Hi everyone,
I’m having an Error problem while processing the binlog - failed to deserialize the data…
I’m using kafka-connector Mysql CDC Debezium connecting to MariaDB.
The connector works until a certain moment, it connects to MariaDB and starts exporting the data, but at a certain point in the data collection it
displays this error below:
**2022-05-25 20:28:40,010 ERROR Error during binlog processing. Last offset stored = null, binlog reader near position = binlog.000619/176100780 (io.debezium.connector.mysql.MySqlStreamingChangeEventSource) [blc-10.201.11.93:3306]**
**2022-05-25 20:28:40,010 ERROR Producer failure (io.debezium.pipeline.ErrorHandler) [blc-10.201.11.93:3306]**
**io.debezium.DebeziumException: Failed to deserialize data of EventHeaderV4{timestamp=1653510243000, eventType=WRITE_ROWS, serverId=181, headerLength=19, dataLength=245, nextPosition=176101107, flags=0}**
** at io.debezium.connector.mysql.MySqlStreamingChangeEventSource.wrap(MySqlStreamingChangeEventSource.java:1167)**
** at io.debezium.connector.mysql.MySqlStreamingChangeEventSource$ReaderThreadLifecycleListener.onEventDeserializationFailure(MySqlStreamingChangeEventSource.java:1220)**
** at com.github.shyiko.mysql.binlog.BinaryLogClient.listenForEventPackets(BinaryLogClient.java:965)**
** at com.github.shyiko.mysql.binlog.BinaryLogClient.connect(BinaryLogClient.java:599)**
** at com.github.shyiko.mysql.binlog.BinaryLogClient$7.run(BinaryLogClient.java:857)**
** at java.base/java.lang.Thread.run(Thread.java:829)**
**Caused by: com.github.shyiko.mysql.binlog.event.deserialization.EventDataDeserializationException: Failed to deserialize data of EventHeaderV4{timestamp=1653510243000, eventType=WRITE_ROWS, serverId=181, headerLength=19, dataLength=245, nextPosition=176101107, flags=0}**
** at com.github.shyiko.mysql.binlog.event.deserialization.EventDeserializer.deserializeEventData(EventDeserializer.java:309)**
** at com.github.shyiko.mysql.binlog.event.deserialization.EventDeserializer.nextEvent(EventDeserializer.java:232)**
** at io.debezium.connector.mysql.MySqlStreamingChangeEventSource$1.nextEvent(MySqlStreamingChangeEventSource.java:230)**
** at com.github.shyiko.mysql.binlog.BinaryLogClient.listenForEventPackets(BinaryLogClient.java:952)**
** ... 3 more**
**Caused by: com.github.shyiko.mysql.binlog.event.deserialization.MissingTableMapEventException: No TableMapEventData has been found for table id:42580. Usually that means that you have started reading binary log 'within the logical event group' (e.g. from WRITE_ROWS and not proceeding TABLE_MAP**
** at com.github.shyiko.mysql.binlog.event.deserialization.AbstractRowsEventDataDeserializer.deserializeRow(AbstractRowsEventDataDeserializer.java:109)**
** at com.github.shyiko.mysql.binlog.event.deserialization.WriteRowsEventDataDeserializer.deserializeRows(WriteRowsEventDataDeserializer.java:64)**
** at com.github.shyiko.mysql.binlog.event.deserialization.WriteRowsEventDataDeserializer.deserialize(WriteRowsEventDataDeserializer.java:56)**
** at com.github.shyiko.mysql.binlog.event.deserialization.WriteRowsEventDataDeserializer.deserialize(WriteRowsEventDataDeserializer.java:32)**
** at com.github.shyiko.mysql.binlog.event.deserialization.EventDeserializer.deserializeEventData(EventDeserializer.java:303)**
** ... 6 more**
I would like to know if there is a solution for this case.
Thanks!