-
Notifications
You must be signed in to change notification settings - Fork 7.7k
Description
- I have searched the issues of this repository and believe that this is not a duplicate.
- I have checked the FAQ of this repository and believe that this is not a duplicate.
environment
- canal version 1.1.3
- mysql version
- mariadb version 10.6.28
Issue Description
在mariadb环境下,修改表结构,在binlog里生成了alter table *** add column ***日志,canal parse到这个日志会报错,停止解析不了后面的日志了;在mysql 8.0环境下,这个解析这个日志是ok的
Steps to reproduce
1、启动canal server;
2、在mariadb环境下,修改表结构,在binlog里生成了alter table *** add column ***日志;
3、查看canal.log,有错误日志;导致canal msg发送不出去。
Expected behaviour
Actual behaviour
If there is an exception, please attach the exception trace:
java.io.IOException: Read Q_FLAGS2_CODE error: limit excceed: 67
at com.taobao.tddl.dbsync.binlog.event.QueryLogEvent.unpackVariables(QueryLogEvent.java:717) ~[canal.parse.dbsync-1.1.3.jar:na]
at com.taobao.tddl.dbsync.binlog.event.QueryLogEvent.(QueryLogEvent.java:495) ~[canal.parse.dbsync-1.1.3.jar:na]
at com.taobao.tddl.dbsync.binlog.LogDecoder.decode(LogDecoder.java:168) ~[canal.parse.dbsync-1.1.3.jar:na]
at com.taobao.tddl.dbsync.binlog.LogDecoder.decode(LogDecoder.java:111) ~[canal.parse.dbsync-1.1.3.jar:na]
at com.alibaba.otter.canal.parse.inbound.mysql.MysqlMultiStageCoprocessor$SimpleParserStage.onEvent(MysqlMultiStageCoprocessor.java:264) [canal.parse-1.1.3.jar:na]
at com.alibaba.otter.canal.parse.inbound.mysql.MysqlMultiStageCoprocessor$SimpleParserStage.onEvent(MysqlMultiStageCoprocessor.java:246) [canal.parse-1.1.3.jar:na]
at com.lmax.disruptor.BatchEventProcessor.processEvents(BatchEventProcessor.java:168) [disruptor-3.4.2.jar:na]
at com.lmax.disruptor.BatchEventProcessor.run(BatchEventProcessor.java:125) [disruptor-3.4.2.jar:na]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [na:1.8.0_131]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_131]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_131]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_131]
at java.lang.Thread.run(Thread.java:748) [na:1.8.0_131]
Just put your stack trace here!