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

MySQL Debezium Connector Unparsable Timestamp/Time Data types

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Cannot Reproduce
    • Icon: Major Major
    • None
    • None
    • mysql-connector
    • None
    • False
    • False

      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.pipeline.ChangeEventSourceCoordinator.lambda$start$0(ChangeEventSourceCoordinator.java:135)
      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:829)
      Caused by: io.debezium.DebeziumException: java.lang.RuntimeException: Invalid length when read MySQL DATE value. BIN_LEN_DATE is 0
      at io.debezium.pipeline.source.AbstractSnapshotChangeEventSource.execute(AbstractSnapshotChangeEventSource.java:79)
      at io.debezium.pipeline.ChangeEventSourceCoordinator.lambda$start$0(ChangeEventSourceCoordinator.java:118)
      ... 5 more
      Caused by: java.lang.RuntimeException: Invalid length when read MySQL DATE value. BIN_LEN_DATE is 0
      at io.debezium.connector.mysql.MysqlBinaryProtocolFieldReader.readDateField(MysqlBinaryProtocolFieldReader.java:78)
      at io.debezium.connector.mysql.AbstractMysqlFieldReader.readField(AbstractMysqlFieldReader.java:33)
      at io.debezium.connector.mysql.MySqlConnection.getColumnValue(MySqlConnection.java:595)
      at io.debezium.jdbc.JdbcConnection.rowToArray(JdbcConnection.java:1484)
      at io.debezium.relational.RelationalSnapshotChangeEventSource.createDataEventsForTable(RelationalSnapshotChangeEventSource.java:366)
      at io.debezium.relational.RelationalSnapshotChangeEventSource.createDataEvents(RelationalSnapshotChangeEventSource.java:315)
      at io.debezium.relational.RelationalSnapshotChangeEventSource.doExecute(RelationalSnapshotChangeEventSource.java:135)
      at io.debezium.pipeline.source.AbstractSnapshotChangeEventSource.execute(AbstractSnapshotChangeEventSource.java:70)
      ... 6 more
      
      

      This happens when columns as datetime or date have values as 0000-00-00 orĀ 
      0000-00-00 00:00:00. After step snapshotting error occurs. The only way I've tested is by doing a select statement override which skips over these values.

            jpechane Jiri Pechanec
            javigoncompte Javier Gonzalez-Compte (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: