0

我在运行 oracle cdc 时遇到以下错误,因为今天早上它运行良好,但从今天早上开始出现错误。

这个错误的确切原因是什么?

由于以下错误,管道 cdc_test 在 2019-06-15 13:37:46 停止:

UNKNOWN com.streamsets.pipeline.api.StageException: JDBC_52 - Error
starting LogMiner at
com.streamsets.pipeline.stage.origin.jdbc.cdc.oracle.OracleCDCSource.startGeneratorThread(OracleCDCSource.java:454)
at
com.streamsets.pipeline.stage.origin.jdbc.cdc.oracle.OracleCDCSource.produce(OracleCDCSource.java:325)
at
com.streamsets.pipeline.api.base.configurablestage.DSource.produce(DSource.java:38)
at
com.streamsets.datacollector.runner.StageRuntime.lambda$execute$2(StageRuntime.java:283)
at
com.streamsets.pipeline.api.impl.CreateByRef.call(CreateByRef.java:40)
at
com.streamsets.datacollector.runner.StageRuntime.execute(StageRuntime.java:235)
at
com.streamsets.datacollector.runner.StageRuntime.execute(StageRuntime.java:298)
at
com.streamsets.datacollector.runner.StagePipe.process(StagePipe.java:219)
at
com.streamsets.datacollector.execution.runner.common.ProductionPipelineRunner.processPipe(ProductionPipelineRunner.java:810)
at
com.streamsets.datacollector.execution.runner.common.ProductionPipelineRunner.runPollSource(ProductionPipelineRunner.java:554)
at
com.streamsets.datacollector.execution.runner.common.ProductionPipelineRunner.run(ProductionPipelineRunner.java:383)
at com.streamsets.datacollector.runner.Pipeline.run(Pipeline.java:527)
at
com.streamsets.datacollector.execution.runner.common.ProductionPipeline.run(ProductionPipeline.java:109)
at
com.streamsets.datacollector.execution.runner.common.ProductionPipelineRunnable.run(ProductionPipelineRunnable.java:75)
at
com.streamsets.datacollector.execution.runner.standalone.StandaloneRunner.start(StandaloneRunner.java:703)
at
com.streamsets.datacollector.execution.AbstractRunner.lambda$scheduleForRetries$0(AbstractRunner.java:349)
at
com.streamsets.pipeline.lib.executor.SafeScheduledExecutorService$SafeCallable.lambda$call$0(SafeScheduledExecutorService.java:226)
at
com.streamsets.datacollector.security.GroupsInScope.execute(GroupsInScope.java:33)
at
com.streamsets.pipeline.lib.executor.SafeScheduledExecutorService$SafeCallable.call(SafeScheduledExecutorService.java:222)
at java.util.concurrent.FutureTask.run(FutureTask.java:266) at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
at
com.streamsets.datacollector.metrics.MetricSafeScheduledExecutorService$MetricsTask.run(MetricSafeScheduledExecutorService.java:100)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748) Caused by:
java.sql.SQLException: ORA-01291: missing logfile ORA-06512: at
"SYS.DBMS_LOGMNR", line 58 ORA-06512: at line 1
4

1 回答 1

1

通常,这意味着当管道停止时,Oracle 删除了一个或多个日志文件,因此管道无法从中断处继续。

此博客条目提供了有关该问题的大量详细信息以及解决该问题的步骤:https ://streamsets.com/blog/replicating-oracle-mysql-json#ora-01291-missing-logfile

于 2019-06-24T20:23:13.947 回答