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

Errors parsing MySQL DDL generated from liquibase

    XMLWordPrintable

Details

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

    Description

      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)
      

      Attachments

        Activity

          People

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

            Dates

              Created:
              Updated:
              Resolved: