Uploaded image for project: 'Debezium'
  1. Debezium
  2. DBZ-4140

Oracle connector throws NPE during streaming in archive only mode

    XMLWordPrintable

Details

    Description

      During a regular streaming session the Oracle connector against 19c dies with this error, after restarting the connector it works again. I have not seen this happening again afterwards, so it could be a certain rare condition.

      [2021-10-07 06:10:47,677] TRACE running 'SELECT SYSTIMESTAMP FROM DUAL' (io.debezium.jdbc.JdbcConnection:642)
      [2021-10-07 06:10:47,695] TRACE Timezone offset of database system time is 7200 seconds (io.debezium.connector.oracle.OracleStreamingChangeEventSourceMetrics:680)
      [2021-10-07 06:10:47,695] TRACE Current time 1633587047695 ms, database difference 5 ms (io.debezium.connector.oracle.OracleStreamingChangeEventSourceMetrics:685)
      [2021-10-07 06:10:47,695] TRACE Getting logs to be mined for offset scn 14347942885861 (io.debezium.connector.oracle.logminer.LogMinerHelper:104)
      [2021-10-07 06:10:48,130] TRACE Archive log /zs03/dbbackup1/logdest/2_128312_1036858580.dbf with SCN range 14347942366672 to 14347942885864 sequence 128312 to be added. (io.debezium.connector.oracle.logminer.LogMinerHelper:122)
      [2021-10-07 06:10:48,911] ERROR Mining session stopped due to the {} (io.debezium.connector.oracle.logminer.LogMinerHelper:86)
      java.lang.NullPointerException
          at java.base/java.math.BigInteger.<init>(BigInteger.java:479)
          at java.base/java.math.BigInteger.<init>(BigInteger.java:672)
          at io.debezium.connector.oracle.Scn.valueOf(Scn.java:68)
          at io.debezium.connector.oracle.OracleConnection.lambda$getMaxArchiveLogScn$10(OracleConnection.java:377)
          at io.debezium.jdbc.JdbcConnection.queryAndMap(JdbcConnection.java:645)
          at io.debezium.jdbc.JdbcConnection.queryAndMap(JdbcConnection.java:513)
          at io.debezium.connector.oracle.OracleConnection.getMaxArchiveLogScn(OracleConnection.java:375)
          at io.debezium.connector.oracle.logminer.LogMinerStreamingChangeEventSource.calculateEndScn(LogMinerStreamingChangeEventSource.java:449)
          at io.debezium.connector.oracle.logminer.LogMinerStreamingChangeEventSource.execute(LogMinerStreamingChangeEventSource.java:134)
          at io.debezium.connector.oracle.logminer.LogMinerStreamingChangeEventSource.execute(LogMinerStreamingChangeEventSource.java:54)
          at io.debezium.pipeline.ChangeEventSourceCoordinator.streamEvents(ChangeEventSourceCoordinator.java:166)
          at io.debezium.pipeline.ChangeEventSourceCoordinator.lambda$start$0(ChangeEventSourceCoordinator.java:127)
          at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
          at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
          at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
          at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
          at java.base/java.lang.Thread.run(Thread.java:834)
      

      Attachments

        Activity

          People

            ccranfor@redhat.com Chris Cranford
            jorn.argelo@mn.nl Jorn Argelo (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: