-
Bug
-
Resolution: Cannot Reproduce
-
Trivial
-
None
-
None
-
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.....