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

WithClause inside an INSERT statement throws DDL parser exception

XMLWordPrintable

    • Important

      In order to make your issue reports as actionable as possible, please provide the following information, depending on the issue type.

      Bug report

      For bug reports, provide this information, please:

      What Debezium connector do you use and what version?

      Using MySQL connector debezium version is 3.2.0.Final

      What is the connector configuration?

      apiVersion: v1
      data:
        application.properties: |-
          debezium.sink.type=pubsub
          quarkus.log.console.json=false
          debezium.sink.pubsub.project.id=***-analytics
          debezium.sink.pubsub.wait.message.delivery.timeout.ms=240000
          debezium.sink.pubsub.flowControl.enabled=true
          debezium.sink.pubsub.ordering.enabled=false
          schema.history.internal.store.only.captured.databases.ddl=true
          schema.history.internal.store.only.captured.tables.ddl=true
          schema.history.internal.skip.unparseable.ddl=true
          debezium.source.schema.history.internal=io.debezium.storage.file.history.FileSchemaHistory
          debezium.source.schema.history.internal.file.filename=data/history.dat
          debezium.source.topic.prefix=BattleCars_Match_Test.tables
          debezium.source.database.server.id=9238295
          debezium.source.connector.class=io.debezium.connector.mysql.MySqlConnector
          debezium.source.offset.storage.file.filename=data/offsets.dat
          debezium.source.max.batch.size=102400
          debezium.source.max.queue.size=1024000
          debezium.source.offset.flush.interval.ms=0
          debezium.source.database.ssl.mode=disabled
          debezium.source.database.hostname=10.51.11.219
          debezium.source.database.port=3306
          debezium.source.database.user=debezium
          debezium.source.database.password=*****
          debezium.source.database.dbname=BattleCars_Match_Test
          debezium.source.database.server.name=BattleCars_Match_Test
          debezium.source.tombstones.on.delete=false
          debezium.source.snapshot.locking.mode=none
          debezium.source.snapshot.max.threads=3

       

          debezium.source.table.include.list=,BattleCars_Match_Test.MatchPlayers2,BattleCars_Match_Test.Matches2,BattleCars_Match_Test.Versions
          debezium.source.include.schema.changes=false
          debezium.source.decimal.handling.mode=string
          debezium.source.snapshot.mode=when_needed

       

          debezium.source.snapshot.include.collection.list=,BattleCars_Match_Test.MatchPlayers2,BattleCars_Match_Test.Matches2,BattleCars_Match_Test.Versions
          debezium.source.offset.flush.interval.ms=0
          debezium.source.read.only=false
          debezium.source.value.converter.schemas.enable=false
          debezium.transforms=Reroute
          debezium.transforms.Reroute.type=io.debezium.transforms.ByLogicalTableRouter

          debezium.transforms.Reroute.topic.regex=(.)BattleCars_Match_Test(.)

          debezium.transforms.Reroute.topic.replacement=mysql-cdc-transactions

      What is the captured database version and mode of deployment?

      deployment mode: debezium server

      What behavior do you expect?

      Connector able to parse all ddls from procedures

      What behavior do you see?

       

      Caused by: io.debezium.text.ParsingException: DDL statement couldn't be parsed. Please open a Jira issue with the statement 'CREATE DEFINER=`ProcRunner`@`localhost` PROCEDURE `CreateDropGroup_v2`(IN inName VARCHAR(45),IN inSeriesID INT,IN inQuality VARCHAR(20),IN inWeight FLOAT,IN inPaintedRate FLOAT,IN inCertifiedRate FLOAT,IN inRollCount INT,IN inVersion INT)BEGININSERT INTO DropGroups (`ID`,`Name`,`SeriesID`,`Quality`,`Weight`,`PaintedRate`,`CertifiedRate`,`RollCount`,`Version`)WITH DropMax AS (SELECT COALESCE(MAX(`ID`), 0) MaxID FROM DropGroups)SELECTLAST_INSERT_ID(MaxID + 1),inName,inSeriesID,inQuality,inWeight,inPaintedRate,inCertifiedRate,inRollCount,inVersionFROM DropMax;SELECT LAST_INSERT_ID() AS DropGroupID;END'

      Do you see the same behaviour using the latest released Debezium version?

      didnt test it yet but this one is one of the latests

       

              ccranfor@redhat.com Chris Cranford
              lucas.ferreira1337 Lucas Ferreira (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: