-
Bug
-
Resolution: Done
-
Major
-
1.7.0.Alpha1
-
None
-
False
-
False
-
Low
-
Undefined
-
While experimenting with the Debezium server and db2 connector, a few moments of inactivity would result in the Debezium server to crash with the following stacktrace:
2021-08-02 04:56:13,367 INFO [io.deb.jdb.JdbcConnection] (pool-10-thread-1) Connection gracefully closed 2021-08-02 04:56:13,371 INFO [org.apa.kaf.con.sto.FileOffsetBackingStore] (pool-7-thread-1) Stopped FileOffsetBackingStore 2021-08-02 04:56:13,372 INFO [io.deb.ser.ConnectorLifecycle] (pool-7-thread-1) Connector completed: success = 'false', message = 'Stopping connector after error in the application's handler method: Unexpected data type 'null'', error = '{}': io.debezium.DebeziumException: Unexpected data type 'null' at io.debezium.server.BaseChangeConsumer.getBytes(BaseChangeConsumer.java:73) at io.debezium.server.kinesis.KinesisChangeConsumer.handleBatch(KinesisChangeConsumer.java:106) at io.debezium.embedded.ConvertingEngineBuilder.lambda$notifying$2(ConvertingEngineBuilder.java:83) at io.debezium.embedded.EmbeddedEngine.run(EmbeddedEngine.java:821) at io.debezium.embedded.ConvertingEngineBuilder$2.run(ConvertingEngineBuilder.java:188) at io.debezium.server.DebeziumServer.lambda$start$1(DebeziumServer.java:145) 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:829)
Inspection of the code for io.debezium.server.kinesis.KinesisChangeConsumer.handleBatch and the definition for getBytes indicates that the object is expected to be either a byte array or a string.