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

Logminer parser cannot parse table name with space

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • 1.5.0.Beta2
    • None
    • None

    Description

      • Debezium-Oracle-version:1.4.2
      • Oracle Version:12c
      • adapter:logminer

      When I publish an Oracle task, I insert three records into Oracle, and the task stops running

                  "id": 0,
                  "state": "FAILED",
                  "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:42)\n\tat io.debezium.connector.oracle.logminer.LogMinerStreamingChangeEventSource.execute(LogMinerStreamingChangeEventSource.java:203)\n\tat io.debezium.pipeline.ChangeEventSourceCoordinator.streamEvents(ChangeEventSourceCoordinator.java:140)\n\tat io.debezium.pipeline.ChangeEventSourceCoordinator.lambda$start$0(ChangeEventSourceCoordinator.java:113)\n\tat java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)\n\tat java.util.concurrent.FutureTask.run(FutureTask.java:266)\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)\n\tat java.lang.Thread.run(Thread.java:748)\nCaused by: io.debezium.connector.oracle.logminer.parser.DmlParserException: DML statement couldn't be parsed. Please open a Jira issue with the statement 'insert into \"UNKNOWN\".\"OBJ# 74858\"(\"COL 1\",\"COL 2\",\"COL 3\",\"COL 4\",\"COL 5\",\"COL 6\",\"COL 7\",\"COL 8\",\"COL 9\",\"COL 10\",\"COL 11\",\"COL 12\",\"COL 13\",\"COL 14\",\"COL 15\",\"COL 16\",\"COL 17\",\"COL 18\",\"COL 19\",\"COL 20\",\"COL 21\",\"COL 22\",\"COL 23\",\"COL 24\",\"COL 25\",\"COL 26\",\"COL 27\",\"COL 28\",\"COL 29\",\"COL 30\",\"COL 31\",\"COL 32\",\"COL 33\",\"COL 34\",\"COL 35\",\"COL 36\",\"COL 37\",\"COL 38\",\"COL 39\",\"COL 40\",\"COL 41\",\"COL 42\",\"COL 43\",\"COL 44\",\"COL 45\",\"COL 46\",\"COL 47\",\"COL 48\",\"COL 49\",\"COL 50\",\"COL 51\",\"COL 52\") values (HEXTORAW('c20207'),HEXTORAW('c3083136'),HEXTORAW('c103'),HEXTORAW('c26039'),HEXTORAW('c102'),HEXTORAW('c3083136'),HEXTORAW('80'),HEXTORAW('c103'),HEXTORAW('c114'),NULL,HEXTORAW('c10a'),HEXTORAW('53595354454d'),HEXTORAW('4c4f474d4e52435f47534949'),HEXTORAW('50313036'),NULL,HEXTORAW('c10a'),HEXTORAW('c10a'),HEXTORAW('c10a'),HEXTORAW('c2061e'),HEXTORAW('80'),HEXTORAW('80'),HEXTORAW('c4051a6329'),HEXTORAW('c102'),HEXTORAW('535953415558'),HEXTORAW('c50625580a2d'),HEXTORAW('c4025d5c3e'),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,HEXTORAW('c102'),HEXTORAW('80'),HEXTORAW('80'),NULL,NULL,NULL,NULL,HEXTORAW('c121'),HEXTORAW('392e302e302e302e30'),NULL,NULL,HEXTORAW('80'));'. You can set internal.log.mining.dml.parser='legacy' as a workaround until the parse error is fixed.\n\tat io.debezium.connector.oracle.logminer.LogMinerQueryResultProcessor.parse(LogMinerQueryResultProcessor.java:293)\n\tat io.debezium.connector.oracle.logminer.LogMinerQueryResultProcessor.processResult(LogMinerQueryResultProcessor.java:199)\n\tat io.debezium.connector.oracle.logminer.LogMinerStreamingChangeEventSource.execute(LogMinerStreamingChangeEventSource.java:182)\n\t... 7 more\nCaused by: io.debezium.connector.oracle.logminer.parser.DmlParserException: Failed to parse insert DML: 'insert into \"UNKNOWN\".\"OBJ# 74858\"(\"COL 1\",\"COL 2\",\"COL 3\",\"COL 4\",\"COL 5\",\"COL 6\",\"COL 7\",\"COL 8\",\"COL 9\",\"COL 10\",\"COL 11\",\"COL 12\",\"COL 13\",\"COL 14\",\"COL 15\",\"COL 16\",\"COL 17\",\"COL 18\",\"COL 19\",\"COL 20\",\"COL 21\",\"COL 22\",\"COL 23\",\"COL 24\",\"COL 25\",\"COL 26\",\"COL 27\",\"COL 28\",\"COL 29\",\"COL 30\",\"COL 31\",\"COL 32\",\"COL 33\",\"COL 34\",\"COL 35\",\"COL 36\",\"COL 37\",\"COL 38\",\"COL 39\",\"COL 40\",\"COL 41\",\"COL 42\",\"COL 43\",\"COL 44\",\"COL 45\",\"COL 46\",\"COL 47\",\"COL 48\",\"COL 49\",\"COL 50\",\"COL 51\",\"COL 52\") values (HEXTORAW('c20207'),HEXTORAW('c3083136'),HEXTORAW('c103'),HEXTORAW('c26039'),HEXTORAW('c102'),HEXTORAW('c3083136'),HEXTORAW('80'),HEXTORAW('c103'),HEXTORAW('c114'),NULL,HEXTORAW('c10a'),HEXTORAW('53595354454d'),HEXTORAW('4c4f474d4e52435f47534949'),HEXTORAW('50313036'),NULL,HEXTORAW('c10a'),HEXTORAW('c10a'),HEXTORAW('c10a'),HEXTORAW('c2061e'),HEXTORAW('80'),HEXTORAW('80'),HEXTORAW('c4051a6329'),HEXTORAW('c102'),HEXTORAW('535953415558'),HEXTORAW('c50625580a2d'),HEXTORAW('c4025d5c3e'),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,HEXTORAW('c102'),HEXTORAW('80'),HEXTORAW('80'),NULL,NULL,NULL,NULL,HEXTORAW('c121'),HEXTORAW('392e302e302e302e30'),NULL,NULL,HEXTORAW('80'));'\n\tat io.debezium.connector.oracle.logminer.parser.LogMinerDmlParser.parseInsert(LogMinerDmlParser.java:123)\n\tat io.debezium.connector.oracle.logminer.parser.LogMinerDmlParser.parse(LogMinerDmlParser.java:79)\n\tat io.debezium.connector.oracle.logminer.LogMinerQueryResultProcessor.parse(LogMinerQueryResultProcessor.java:283)\n\t... 9 more\nCaused by: java.lang.StringIndexOutOfBoundsException: String index out of range: 1208\n\tat java.lang.String.substring(String.java:1963)\n\tat io.debezium.connector.oracle.logminer.parser.LogMinerDmlParser.parseColumnValuesClause(LogMinerDmlParser.java:286)\n\tat io.debezium.connector.oracle.logminer.parser.LogMinerDmlParser.parseInsert(LogMinerDmlParser.java:109)\n\t... 11 more\n"
      

      my task config is:

       

      my insert sql

      Attachments

        Issue Links

          Activity

            People

              jpechane Jiri Pechanec
              azurel azure M (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: