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

restarting sqlserver CDC cause java.lang.NullPointerException

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Critical
    • None
    • 1.2.0.Final, 1.2.1.Final, 1.3.0.Alpha1
    • debezium-server
    • None

    Description

      The NullPointerException will appear by the following steps

      Step0: generate change events;

      Step1 : delete debezium connector by kafka connect restful api ;

      Step2 : disable sqlserver cdc;

      Step3: enable sqlserver cdc;

      Step4: create debezium connector again by connect restful api;

      Step5: generate change events again;

       
       
      Affected versions is 1.2.0.FINAL, 1.2.1.FINAL etc., but there is no such problem in 1.1.2.final.

       

      org.apache.kafka.connect.errors.ConnectException: An exception occurred in the change event producer. This connector will be stopped.
       at io.debezium.pipeline.ErrorHandler.setProducerThrowable(ErrorHandler.java:42)
       at io.debezium.connector.sqlserver.SqlServerStreamingChangeEventSource.execute(SqlServerStreamingChangeEventSource.java:268)
       at io.debezium.pipeline.ChangeEventSourceCoordinator.lambda$start$0(ChangeEventSourceCoordinator.java:108)
       at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
       at java.util.concurrent.FutureTask.run(FutureTask.java:266)
       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.lang.NullPointerException
       at io.debezium.connector.AbstractSourceInfoStructMaker.commonStruct(AbstractSourceInfoStructMaker.java:53)
       at io.debezium.connector.sqlserver.SqlServerSourceInfoStructMaker.struct(SqlServerSourceInfoStructMaker.java:37)
       at io.debezium.connector.sqlserver.SqlServerSourceInfoStructMaker.struct(SqlServerSourceInfoStructMaker.java:14)
       at io.debezium.connector.AbstractSourceInfo.struct(AbstractSourceInfo.java:76)
       at io.debezium.connector.sqlserver.SqlServerOffsetContext.getSourceInfo(SqlServerOffsetContext.java:91)
       at io.debezium.connector.sqlserver.SqlServerSchemaChangeEventEmitter.emitSchemaChangeEvent(SqlServerSchemaChangeEventEmitter.java:42)
       at io.debezium.pipeline.EventDispatcher.dispatchSchemaChangeEvent(EventDispatcher.java:263)
       at io.debezium.connector.sqlserver.SqlServerStreamingChangeEventSource.migrateTable(SqlServerStreamingChangeEventSource.java:276)
       at io.debezium.connector.sqlserver.SqlServerStreamingChangeEventSource.lambda$execute$1(SqlServerStreamingChangeEventSource.java:221)
       at io.debezium.jdbc.JdbcConnection.prepareQuery(JdbcConnection.java:524)
       at io.debezium.connector.sqlserver.SqlServerConnection.getChangesForTables(SqlServerConnection.java:190)
       at io.debezium.connector.sqlserver.SqlServerStreamingChangeEventSource.execute(SqlServerStreamingChangeEventSource.java:162)
       ... 6 more
      [2020-08-07 15:06:03,837] ERROR WorkerSourceTask{id=tracking-connector-3-0} Task is being killed and will not recover until manually restarted (org.apache.kafka.connect.runtime.WorkerTask)

       

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              xiaoyabo123xyb@163.com Adam Xiao (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: