debezium / debezium/dbz

Error processing binlog event [DBZ-9202]

Open
#1,240 2 comments 0 reactions 0 assignees View on GitHub
component/mariadb-connector migrated-from-jira type/bug
Dominant language
HTML
Stars
6
Forks
8
Avg merge
2d 19h
Merged PRs (30d)
1

Description

Migrated from [DBZ-9202](https://issues.redhat.com/browse/DBZ-9202)

h1. Bug report

For bug reports, provide this information, please:
h2. What Debezium connector do you use and what version?

MariaDB source connector version 3.0.6.Final
h2. What is the captured database version and mode of deployment?

Mariadb AWS RDS
h2. What behavior do you expect?

The expected behaviour is for the source record to be processed and the correct number of columns to be recognized.
h2. What behavior do you see?

The source record can't be processed and a wrong number of columns is shown.
h2. Do you see the same behaviour using the latest released Debezium version?

yes
h2. Do you have the connector logs, ideally from start till finish?

 
{code:java}
io.debezium.DebeziumException: Error processing binlog event
at io.debezium.connector.binlog.BinlogStreamingChangeEventSource.handleEvent(BinlogStreamingChangeEventSource.java:591)
at io.debezium.connector.binlog.BinlogStreamingChangeEventSource.lambda$execute$17(BinlogStreamingChangeEventSource.java:209)
at com.github.shyiko.mysql.binlog.BinaryLogClient.notifyEventListeners(BinaryLogClient.java:1281)
at com.github.shyiko.mysql.binlog.BinaryLogClient.listenForEventPackets(BinaryLogClient.java:1103)
at com.github.shyiko.mysql.binlog.BinaryLogClient.connect(BinaryLogClient.java:657)
at com.github.shyiko.mysql.binlog.BinaryLogClient$7.run(BinaryLogClient.java:959)
at java.base/java.lang.Thread.run(Unknown Source)
Caused by: io.debezium.DebeziumException: Error processing row in bi_test_table, internal schema size 2, but row size 3 , restart connector with schema recovery mode.
at io.debezium.connector.binlog.BinlogStreamingChangeEventSource.validateChangeEventWithTable(BinlogStreamingChangeEventSource.java:1065)
at io.debezium.connector.binlog.BinlogStreamingChangeEventSource.lambda$handleInsert$28(BinlogStreamingChangeEventSource.java:837)
at io.debezium.connector.binlog.BinlogStreamingChangeEventSource.handleChange(BinlogStreamingChangeEventSource.java:1101)
at io.debezium.connector.binlog.BinlogStreamingChangeEventSource.handleInsert(BinlogStreamingChangeEventSource.java:832)
at io.debezium.connector.binlog.BinlogStreamingChangeEventSource.lambda$execute$7(BinlogStreamingChangeEventSource.java:183)
at io.debezium.connector.binlog.BinlogStreamingChangeEventSource.handleEvent(BinlogStreamingChangeEventSource.java:571)
... 6 common frames omitted {code}
{code:java}
Error processing after of row in bi_test_table because it's different column size with internal schema size 2, but after size 3, restart connector with schema recovery mode. {code}
 
h2. How to reproduce?

DDL:
{code:java}
CREATE TABLE `test_db`.`test_table`
(
`id` varchar(255) NOT NULL,
`token` varchar(1536) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `token_unique_key` (`token`)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8mb4
COLLATE = utf8mb4_unicode_ci; {code}
Insert Statement:
{code:java}
INSERT INTO test_table (id, token)
VALUES ('1', 'token1'); {code}
Notes after testing:
{code:java}
-- fails with varchar(1536) + Unique Key
-- doesn't fail with varchar(1536) without Unique Key
-- doesn't fail with varchar(255) + Unique Key
-- doesn't fail with varchar(255) without Unique Key{code}
 

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.