Uploaded image for project: 'Debezium'
  1. Debezium
  2. DBZ-5134

Cannot parse default value 0.000000000000000000 for bigint column

    XMLWordPrintable

Details

    • False
    • None
    • False

    Description

      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
      

      Attachments

        Activity

          People

            Unassigned Unassigned
            ywyuewei Harvey Yue
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: