-
Bug
-
Resolution: Done
-
Major
-
None
-
None
-
False
-
None
-
False
Mysql connector parse the decimal default value for bigint column error.
CREATE TABLE `tbl_default` ( `id` int(11) NOT NULL AUTO_INCREMENT, c0 tinyint not null default '10.01', c1 int not null default '5.234', c2 bigint not null default 0.000000000000000000, c3 bigint not null default '.12345', c4 smallint not null default 100.12345, PRIMARY KEY (`id`) )
org.apache.kafka.connect.errors.ConnectException: An exception occurred in the change event producer. This connector will be stopped.\n\t at io.debezium.pipeline.ErrorHandler.setProducerThrowable(ErrorHandler.java:42)\n\t at io.debezium.connector.mysql.MySqlStreamingChangeEventSource.handleEvent(MySqlStreamingChangeEventSource.java:369)\n\t at com.github.shyiko.mysql.binlog.BinaryLogClient.notifyEventListeners(BinaryLogClient.java:1118)\n\t at com.github.shyiko.mysql.binlog.BinaryLogClient.listenForEventPackets(BinaryLogClient.java:966)\n\t at com.github.shyiko.mysql.binlog.BinaryLogClient.connect(BinaryLogClient.java:606)\n\t at com.github.shyiko.mysql.binlog.BinaryLogClient$7.run(BinaryLogClient.java:850)\n\t at java.base/java.lang.Thread.run(Thread.java:830)\n Caused by: io.debezium.DebeziumException: Error processing binlog event\n\t... 6 more\n Caused by: java.lang.NumberFormatException: For input string: \"0.000000000000000000\"\n\t at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:68)\n\t at java.base/java.lang.Long.parseLong(Long.java:699)\n\tat java.base/java.lang.Long.valueOf(Long.java:1151)\n\t at io.debezium.jdbc.JdbcValueConverters.lambda$convertBigInt$42(JdbcValueConverters.java:919)\n\t at io.debezium.jdbc.JdbcValueConverters.convertValue(JdbcValueConverters.java:1288)\n\t at io.debezium.jdbc.JdbcValueConverters.convertBigInt(JdbcValueConverters.java:907)\n\t at io.debezium.jdbc.JdbcValueConverters.lambda$converter$6(JdbcValueConverters.java:297)\n\t at io.debezium.connector.mysql.MySqlDefaultValueConverter.setColumnDefaultValue(MySqlDefaultValueConverter.java:405)\n\t at io.debezium.connector.mysql.antlr.listener.CreateTableParserListener.convertDefaultValueToSchemaType(CreateTableParserListener.java:147)\n\t at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)\n\t at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)\n\t at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1621)\n\t at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)\n\t at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)\n\t at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913)\n\t at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)\n\t at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578)\n\t at io.debezium.connector.mysql.antlr.listener.CreateTableParserListener.lambda$exitColumnCreateTable$1(CreateTableParserListener.java:75) at io.debezium.connector.mysql.antlr.MySqlAntlrDdlParser.runIfNotNull(MySqlAntlrDdlParser.java:357)\n\t at io.debezium.connector.mysql.antlr.listener.CreateTableParserListener.exitColumnCreateTable(CreateTableParserListener.java:55)\n\t at io.debezium.ddl.parser.mysql.generated.MySqlParser$ColumnCreateTableContext.exitRule(MySqlParser.java:4715)\n\t at io.debezium.antlr.ProxyParseTreeListenerUtil.delegateExitRule(ProxyParseTreeListenerUtil.java:64)\n\t at io.debezium.connector.mysql.antlr.listener.MySqlAntlrDdlParserListener.exitEveryRule(MySqlAntlrDdlParserListener.java:106)\n\t at org.antlr.v4.runtime.tree.ParseTreeWalker.exitRule(ParseTreeWalker.java:48)\n\t at org.antlr.v4.runtime.tree.ParseTreeWalker.walk(ParseTreeWalker.java:30)\n\t at org.antlr.v4.runtime.tree.ParseTreeWalker.walk(ParseTreeWalker.java:28)\n\t at org.antlr.v4.runtime.tree.ParseTreeWalker.walk(ParseTreeWalker.java:28)\n\t at org.antlr.v4.runtime.tree.ParseTreeWalker.walk(ParseTreeWalker.java:28)\n\t at org.antlr.v4.runtime.tree.ParseTreeWalker.walk(ParseTreeWalker.java:28)\n\t at io.debezium.antlr.AntlrDdlParser.parse(AntlrDdlParser.java:85)\n\t at io.debezium.connector.mysql.MySqlDatabaseSchema.parseDdl(MySqlDatabaseSchema.java:210)\n\t at io.debezium.connector.mysql.MySqlDatabaseSchema.parseStreamingDdl(MySqlDatabaseSchema.java:197)\n\t at io.debezium.connector.mysql.MySqlStreamingChangeEventSource.handleQueryEvent(MySqlStreamingChangeEventSource.java:574)\n\t at io.debezium.connector.mysql.MySqlStreamingChangeEventSource.handleEvent(MySqlStreamingChangeEventSource.java:352)\n\t