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

quote.sql.identifiers

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Cannot Reproduce
    • Icon: Trivial Trivial
    • None
    • None
    • connect-service
    • None
    • False
    • False
    • Undefined

      i am using dbz connector to go from pgsql to oracle:

      the source connector is debezium

      the sink connector is from debezium/connect:1.2.4.Final

      objects (table,column,schema) in pgsql are in lower case.
      objects in oracle are in uppercase.

      i have set quote.sql.identifiers to never, see desc:
      curl -X POST -H "Content-Type:application/json" kafka-connect.kafka:8083/connectors -d '{
      "name": "oradbname_newtable_sink",
      "config": { "connector.class": "io.confluent.connect.jdbc.JdbcSinkConnector", "key.converter": "io.confluent.connect.avro.AvroConverter", "key.converter.schema.registry.url": "myurl", "key.converter.basic.auth.credentials.source": "USER_INFO", "key.converter.basic.auth.user.info": "user:pwd", "value.converter": "io.confluent.connect.avro.AvroConverter", "value.converter.schema.registry.url": "myurl", "value.converter.basic.auth.credentials.source": "USER_INFO", "value.converter.basic.auth.user.info": "user:pwd", "delete.enabled": "true", "tasks.max": "1", "quote.sql.identifiers": "never", "topics": "mytopic.myschema.mytable", "table.name.format": "DBZMD.MYTABLE", "dialect.name": "OracleDatabaseDialect", "connection.url": "myoracle_srv", "connection.user": "DBZMD", "connection.password": "pwd", "transforms": "unwrap", "transforms.unwrap.type": "io.debezium.transforms.ExtractNewRecordState", "transforms.unwrap.drop.tombstones": "false", "insert.mode": "upsert", "pk.mode": "record_key", "pk.fields": "id" }
      }'

      Failure:

      org.apache.kafka.connect.errors.ConnectException: Exiting WorkerSinkTask due to unrecoverable exception.
      at org.apache.kafka.connect.runtime.WorkerSinkTask.deliverMessages(WorkerSinkTask.java:568)
      at org.apache.kafka.connect.runtime.WorkerSinkTask.poll(WorkerSinkTask.java:326)
      at org.apache.kafka.connect.runtime.WorkerSinkTask.iteration(WorkerSinkTask.java:228)
      at org.apache.kafka.connect.runtime.WorkerSinkTask.execute(WorkerSinkTask.java:196)
      at org.apache.kafka.connect.runtime.WorkerTask.doRun(WorkerTask.java:184)
      at org.apache.kafka.connect.runtime.WorkerTask.run(WorkerTask.java:234)
      at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
      at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
      at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
      at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
      at java.base/java.lang.Thread.run(Thread.java:834)
      Caused by: org.apache.kafka.connect.errors.ConnectException: java.sql.SQLException: java.sql.BatchUpdateException: ORA-00904: "DBZMD"."NEWTABLE"."id": invalid identifier

      java.sql.SQLSyntaxErrorException: ORA-00904: "DBZMD"."NEWTABLE"."id": invalid identifier

      at io.confluent.connect.jdbc.sink.JdbcSinkTask.put(JdbcSinkTask.java:88)
      at org.apache.kafka.connect.runtime.WorkerSinkTask.deliverMessages(WorkerSinkTask.java:546)
      ... 10 more
      Caused by: java.sql.SQLException: java.sql.BatchUpdateException: ORA-00904: "DBZMD"."NEWTABLE"."id": invalid identifier

      java.sql.SQLSyntaxErrorException: ORA-00904: "DBZMD"."NEWTABLE"."id": invalid identifier


      quote.sql.identifiers has no effect.....

       

              Unassigned Unassigned
              pmpetit Pierre-Marie Petit (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: