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

Unable to connect to mariadb with temporal data

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Major Major
    • Backlog
    • 3.1.3.Final
    • mariadb-connector
    • None
    • False
    • Hide

      None

      Show
      None
    • False
    • Important

      Unable to connect to mariadb with Transaction-Precise History: https://mariadb.com/docs/server/reference/sql-structure/temporal-tables/system-versioned-tables#transaction-precise-history-in-innodb

      Bug report

       

       

      {"name":"mariadb","connector":{"state":"RUNNING","worker_id":"172.19.0.7:8083"},"tasks":[{"id":0,"state":"FAILED","worker_id":"172.19.0.7:8083","trace":"org.apache.kafka.connect.errors.ConnectException: An exception occurred in the change event producer. This connector will be stopped.\n\tat io.debezium.pipeline.ErrorHandler.setProducerThrowable(ErrorHandler.java:67)\n\tat io.debezium.pipeline.ChangeEventSourceCoordinator.lambda$start$0(ChangeEventSourceCoordinator.java:154)\n\tat java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572)\n\tat java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)\n\tat java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)\n\tat java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)\n\tat java.base/java.lang.Thread.run(Thread.java:1583)\nCaused by: io.debezium.DebeziumException: io.debezium.text.ParsingException: DDL statement couldn't be parsed. Please open a Jira issue with the statement 'CREATE TABLE `t` (\n `x` int(11) DEFAULT NULL,\n `start_trxid` bigint(20) unsigned GENERATED ALWAYS AS ROW START,\n `end_trxid` bigint(20) unsigned GENERATED ALWAYS AS ROW END,\n PERIOD FOR SYSTEM_TIME (`start_trxid`, `end_trxid`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci WITH SYSTEM VERSIONING'\nno viable alternative at input 'CREATE TABLE `t` (\\n `x` int(11) DEFAULT NULL,\\n `start_trxid` bigint(20) unsigned GENERATED ALWAYS AS ROW'\n\tat io.debezium.pipeline.source.AbstractSnapshotChangeEventSource.execute(AbstractSnapshotChangeEventSource.java:105)\n\tat io.debezium.pipeline.ChangeEventSourceCoordinator.doSnapshot(ChangeEventSourceCoordinator.java:298)\n\tat io.debezium.pipeline.ChangeEventSourceCoordinator.doSnapshot(ChangeEventSourceCoordinator.java:282)\n\tat io.debezium.pipeline.ChangeEventSourceCoordinator.executeChangeEventSources(ChangeEventSourceCoordinator.java:196)\n\tat io.debezium.pipeline.ChangeEventSourceCoordinator.lambda$start$0(ChangeEventSourceCoordinator.java:147)\n\t... 5 more\nCaused by: io.debezium.text.ParsingException: DDL statement couldn't be parsed. Please open a Jira issue with the statement 'CREATE TABLE `t` (\n `x` int(11) DEFAULT NULL,\n `start_trxid` bigint(20) unsigned GENERATED ALWAYS AS ROW START,\n `end_trxid` bigint(20) unsigned GENERATED ALWAYS AS ROW END,\n PERIOD FOR SYSTEM_TIME (`start_trxid`, `end_trxid`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci WITH SYSTEM VERSIONING'\nno viable alternative at input 'CREATE TABLE `t` (\\n `x` int(11) DEFAULT NULL,\\n `start_trxid` bigint(20) unsigned GENERATED ALWAYS AS ROW'\n\tat io.debezium.antlr.ParsingErrorListener.syntaxError(ParsingErrorListener.java:43)\n\tat org.antlr.v4.runtime.ProxyErrorListener.syntaxError(ProxyErrorListener.java:41)\n\tat org.antlr.v4.runtime.Parser.notifyErrorListeners(Parser.java:543)\n\tat org.antlr.v4.runtime.DefaultErrorStrategy.reportNoViableAlternative(DefaultErrorStrategy.java:310)\n\tat org.antlr.v4.runtime.DefaultErrorStrategy.reportError(DefaultErrorStrategy.java:136)\n\tat io.debezium.ddl.parser.mariadb.generated.MariaDBParser.sqlStatements(MariaDBParser.java:1271)\n\tat io.debezium.ddl.parser.mariadb.generated.MariaDBParser.root(MariaDBParser.java:991)\n\tat io.debezium.connector.mariadb.antlr.MariaDbAntlrDdlParser.parseTree(MariaDbAntlrDdlParser.java:73)\n\tat io.debezium.connector.mariadb.antlr.MariaDbAntlrDdlParser.parseTree(MariaDbAntlrDdlParser.java:46)\n\tat io.debezium.antlr.AntlrDdlParser.parse(AntlrDdlParser.java:73)\n\tat io.debezium.connector.binlog.BinlogDatabaseSchema.parseDdl(BinlogDatabaseSchema.java:311)\n\tat io.debezium.connector.binlog.BinlogDatabaseSchema.parseSnapshotDdl(BinlogDatabaseSchema.java:243)\n\tat io.debezium.connector.binlog.BinlogSnapshotChangeEventSource.addSchemaEvent(BinlogSnapshotChangeEventSource.java:287)\n\tat io.debezium.connector.binlog.BinlogSnapshotChangeEventSource.lambda$createSchemaEventsForTables$4(BinlogSnapshotChangeEventSource.java:388)\n\tat io.debezium.jdbc.JdbcConnection.query(JdbcConnection.java:566)\n\tat io.debezium.jdbc.JdbcConnection.query(JdbcConnection.java:506)\n\tat io.debezium.connector.binlog.BinlogSnapshotChangeEventSource.createSchemaEventsForTables(BinlogSnapshotChangeEventSource.java:386)\n\tat io.debezium.connector.binlog.BinlogSnapshotChangeEventSource.readTableStructure(BinlogSnapshotChangeEventSource.java:360)\n\tat io.debezium.connector.binlog.BinlogSnapshotChangeEventSource.readTableStructure(BinlogSnapshotChangeEventSource.java:67)\n\tat io.debezium.relational.RelationalSnapshotChangeEventSource.doExecute(RelationalSnapshotChangeEventSource.java:163)\n\tat io.debezium.pipeline.source.AbstractSnapshotChangeEventSource.execute(AbstractSnapshotChangeEventSource.java:96)\n\t... 9 more\nCaused by: org.antlr.v4.runtime.NoViableAltException\n\tat org.antlr.v4.runtime.atn.ParserATNSimulator.noViableAlt(ParserATNSimulator.java:2028)\n\tat org.antlr.v4.runtime.atn.ParserATNSimulator.execATN(ParserATNSimulator.java:467)\n\tat org.antlr.v4.runtime.atn.ParserATNSimulator.adaptivePredict(ParserATNSimulator.java:393)\n\tat io.debezium.ddl.parser.mariadb.generated.MariaDBParser.sqlStatements(MariaDBParser.java:1067)\n\t... 24 more\n"}],"type":"source"}
       
      

       

      What Debezium connector do you use and what version?

      Any version

      What is the connector configuration?

       

       

      {
        "connector.class": "io.debezium.connector.mariadb.MariaDbConnector",
        "topic.prefix": "mariadb",
        "schema.history.internal.kafka.topic": "schema-changes.mariadb",
        "schema.history.internal.kafka.bootstrap.servers": "kafka:29092",
        "database.server.name": "mariadb",
        "database.server.id": 5765,
        "database.hostname": "mariadb",
        "database.port": "3306",
        "database.user": "root",
        "database.password": "password",
        "database.include.list": "inventory,testdb",
        "table.exclude.list": "inventory.audit_log,inventory.temp_data,inventory.staging_.*",
        "column.exclude.list": "inventory.customers.password,inventory.users.secret_key",
        "key.converter": "io.confluent.connect.avro.AvroConverter",
        "value.converter": "io.confluent.connect.avro.AvroConverter",
        "key.converter.schema.registry.url": "http://schema-registry:8081",
        "value.converter.schema.registry.url": "http://schema-registry:8081",
        "snapshot.mode": "no_data",
        "include.schema.changes": "false",
        "schema.history.internal.store.only.captured.tables.ddl": "true"
      }

       

       

      What is the captured database version and mode of deployment?

      Docker

      What behavior do you expect?

      No error

      What behavior do you see?

      DDL statement couldn't be parsed.

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

      any version include 2.7, 3.1.2 and 3.2

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

      cf above

      How to reproduce the issue using our tutorial deployment?

      Table creation

      CREATE TABLE t(   x INT,   start_trxid BIGINT UNSIGNED GENERATED ALWAYS AS ROW START,   end_trxid BIGINT UNSIGNED GENERATED ALWAYS AS ROW END,   PERIOD FOR SYSTEM_TIME(start_trxid, end_trxid)) WITH SYSTEM VERSIONING;

       

              Unassigned Unassigned
              mmicael Micael Malta (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated: