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

Dbz crashes on parsing MySQL DDL statement (SELECT 1.;)

XMLWordPrintable

    • Important

      What Debezium connector do you use and what version?

      2.3.2 Final

      What is the captured database version and mode of depoyment?

      Percona (MySQL 5.7.41)

      What behaviour do you see?

      When exec basic statemnt like this:

      DROP PROCEDURE IF EXISTS test_proc;
      CREATE DEFINER=`peuser`@`%` PROCEDURE `test_proc`()
      
      BEGIN
          SELECT 1.;
      END 

      Dbz fails with fatal error on SELECT 1.;
      I mean problem not only with select. Where and etc. have some problem.

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

      Caused by: io.debezium.text.ParsingException: DDL statement couldn't be parsed. Please open a Jira issue with the statement 'CREATE DEFINER=`peuser`@`%` PROCEDURE `test_proc`()
      BEGIN
          SELECT 1.;
      END'
      no viable alternative at input 'CREATE DEFINER=`peuser`@`%` PROCEDURE `test_proc`()\nBEGIN\n    SELECT 1.;'
              at io.debezium.antlr.ParsingErrorListener.syntaxError(ParsingErrorListener.java:43)
              at org.antlr.v4.runtime.ProxyErrorListener.syntaxError(ProxyErrorListener.java:41)
              at org.antlr.v4.runtime.Parser.notifyErrorListeners(Parser.java:543)
              at org.antlr.v4.runtime.DefaultErrorStrategy.reportNoViableAlternative(DefaultErrorStrategy.java:310)
              at org.antlr.v4.runtime.DefaultErrorStrategy.reportError(DefaultErrorStrategy.java:136)
              at io.debezium.ddl.parser.mysql.generated.MySqlParser.sqlStatements(MySqlParser.java:1271)
              at io.debezium.ddl.parser.mysql.generated.MySqlParser.root(MySqlParser.java:987)
              at io.debezium.connector.mysql.antlr.MySqlAntlrDdlParser.parseTree(MySqlAntlrDdlParser.java:74)
              at io.debezium.connector.mysql.antlr.MySqlAntlrDdlParser.parseTree(MySqlAntlrDdlParser.java:46)
              at io.debezium.antlr.AntlrDdlParser.parse(AntlrDdlParser.java:78)
              at io.debezium.connector.mysql.MySqlDatabaseSchema.parseDdl(MySqlDatabaseSchema.java:213)
              at io.debezium.connector.mysql.MySqlDatabaseSchema.parseStreamingDdl(MySqlDatabaseSchema.java:199)
              at io.debezium.connector.mysql.MySqlStreamingChangeEventSource.handleQueryEvent(MySqlStreamingChangeEventSource.java:591)
              at io.debezium.connector.mysql.MySqlStreamingChangeEventSource.lambda$execute$15(MySqlStreamingChangeEventSource.java:899)
              at io.debezium.connector.mysql.MySqlStreamingChangeEventSource.handleEvent(MySqlStreamingChangeEventSource.java:373)
              ... 6 more
      Caused by: org.antlr.v4.runtime.NoViableAltException
              at org.antlr.v4.runtime.atn.ParserATNSimulator.noViableAlt(ParserATNSimulator.java:2028)
              at org.antlr.v4.runtime.atn.ParserATNSimulator.execATN(ParserATNSimulator.java:467)
              at org.antlr.v4.runtime.atn.ParserATNSimulator.adaptivePredict(ParserATNSimulator.java:393)
              at io.debezium.ddl.parser.mysql.generated.MySqlParser.sqlStatements(MySqlParser.java:1063)
              ... 15 more 

       

       

       

            ccranfor@redhat.com Chris Cranford
            politov.eugene Eugenius Politou (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: