shyiko/mysql-binlog-connector-java

readMetadata

wlyu opened this issue · 1 comments

wlyu commented

MYSQL8.0

#221121 10:12:04 server id 1 end_log_pos 72526621 CRC32 0x342bef14 Write_rows: table id 371 flags: STMT_END_F

INSERT INTO xxx.abcd

SET

@1=241421

.....

.....

@99=NULL

at 72526621


java.lang.NullPointerException: null
at com.github.shyiko.mysql.binlog.event.deserialization.TableMapEventDataDeserializer.readMetadata(TableMapEventDataDeserializer.java:81) ~[mysql-binlog-connector-java-0.25.6.jar:0.25.6]

debug:
in method readMetadata:

switch(ColumnType.byCode(columnTypes[i] & 0xFF))

columnTypes.length == 101,but real length is 99[desc table abcd]

columnTypes[99]=20
columnTypes[100]=20

20===TYPED_ARRAY ?

I think skip 20 without loss data.

wlyu commented

8.0.18
bug
when some table schema