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

Errors parsing MySQL DDL generated from liquibase

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Critical Critical
    • 0.2.3, 0.3
    • 0.2.2
    • mysql-connector
    • None

      The MySQL connector results in an error when parsing some DDL from the "TicketMonster" application. Basically, a statement of the form:

      CREATE TABLE `SectionAllocation` (
        `id` bigint(20) NOT NULL AUTO_INCREMENT,
        `allocated` longblob,
        `occupiedCount` int(11) NOT NULL,
        `performance_id` bigint(20) DEFAULT NULL,
        `performance_name` varchar(255) DEFAULT NULL,
        `version` bigint(20) NOT NULL,
        `section_id` bigint(20) NOT NULL,
        PRIMARY KEY (`id`),
        UNIQUE KEY `UK25wlm457x8dmc00we5uw7an3s` (`performance_id`,`section_id`),
        KEY `FK60388cvbhb1xyrdhhe546t6dl` (`section_id`),
        CONSTRAINT `FK60388cvbhb1xyrdhhe546t6dl` FOREIGN KEY (`section_id`) REFERENCES `Section` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION
      ) ENGINE=InnoDB AUTO_INCREMENT=57 DEFAULT CHARSET=latin1;
      

      produces an error:

      io.debezium.text.ParsingException: Expecting ')' at line 51, column 99 but found 'ON': ES `Section` (`id`)  ===>> ON DELETE NO ACTION 
      	at io.debezium.text.TokenStream.consume(TokenStream.java:693)
      	at io.debezium.connector.mysql.MySqlDdlParser.parseCreateDefinitionList(MySqlDdlParser.java:398)
      	at io.debezium.connector.mysql.MySqlDdlParser.parseCreateTable(MySqlDdlParser.java:224)
      	at io.debezium.connector.mysql.MySqlDdlParser.parseCreate(MySqlDdlParser.java:149)
      	at io.debezium.connector.mysql.MySqlDdlParser.parseNextStatement(MySqlDdlParser.java:130)
      	at io.debezium.relational.ddl.DdlParser.parse(DdlParser.java:275)
      	at io.debezium.relational.ddl.DdlParser.parse(DdlParser.java:256)
      	at io.debezium.connector.mysql.MySqlSchema.applyDdl(MySqlSchema.java:290)
      	at io.debezium.connector.mysql.SnapshotReader.execute(SnapshotReader.java:273)
      	at java.lang.Thread.run(Thread.java:745)
      

              rhauch Randall Hauch (Inactive)
              rhauch Randall Hauch (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: