-
Bug
-
Resolution: Done
-
Major
-
1.9.4.Final, 1.9.6.Final, 2.0.0.Beta2
-
None
-
False
-
None
-
False
-
If Release Note Needed, Set a Value
-
Set a Value
In order to make your issue reports as actionable as possible, please provide the following information, depending on the issue type.
Bug report
What Debezium connector do you use and what version?
- 1.9.4.Final
- 1.9.6.Final
- 2.0.0.Beta2
What is the connector configuration?
{ "name": "dbz_oracle", "config": { "connector.class": "io.debezium.connector.oracle.OracleConnector", "snapshot.mode": "schema_only", "schema.include.list": "TESTUSER", "table.include.list": "TESTUSER\\.(DBZ_TEST_TABLE_UK)", "database.server.name": "ORA", "database.history.kafka.topic": "schema-changes.dbz_oracle", "database.history.kafka.bootstrap.servers": "kafka1:9092,kafka2:9093", "database.history.skip.unparseable.ddl": "true", "database.dbname": "ORCLCDB ", "database.pdb.name": "ORCLPDB1", "database.hostname": "oracle", "database.port": "1521", "database.user": "c##dbzuser", "database.password": "dbz", "database.connection.adapter": "logminer", "log.mining.strategy": "online_catalog", "tombstones.on.delete": "false", "decimal.handling.mode": "double", "lob.enabled": "true" } }
What is the captured database version and mode of depoyment?
(E.g. on-premises, with a specific cloud provider, etc.)
oracle 12c
What behaviour do you expect?
create table TESTUSER.DBZ_TEST_TABLE_UK ( COL_BPCHAR VARCHAR2(30), COL_VARCHAR VARCHAR2(30), COL_FLOAT8 NUMBER, COL_INT4 NUMBER(5), COL_NUMERIC NUMBER, COL_INT2 NUMBER(8), COL_TEXT VARCHAR2(30), COL_TIMESTAMP DATE, constraint UK_DBZ_TEST_TABLE_UK unique (COL_BPCHAR, COL_VARCHAR) ) insert into TESTUSER.DBZ_TEST_TABLE_UK (COL_BPCHAR, COL_VARCHAR, COL_FLOAT8, COL_INT4, COL_NUMERIC, COL_INT2, COL_TEXT, COL_TIMESTAMP) values ('HI', null, 1234.1234, 1234, 1234, 1234, 'HI', SYSDATE);
When commit this query, that one of UNIQUE value is null.
Then send DML message to kafka
What behaviour do you see?
Throw error and killed task
2022-10-07 06:13:03,892 ERROR || WorkerSourceTask{id=dbz_oracle-0} Task threw an uncaught and unrecoverable exception. Task is being killed and will not recover until manually restarted [org.apache.kafka.connect.runtime.WorkerTask]org.apache.kafka.connect.errors.ConnectException: An exception occurred in the change event producer. This connector will be stopped.at io.debezium.pipeline.ErrorHandler.setProducerThrowable(ErrorHandler.java:50)at io.debezium.connector.oracle.logminer.LogMinerStreamingChangeEventSource.execute(LogMinerStreamingChangeEventSource.java:222)at io.debezium.connector.oracle.logminer.LogMinerStreamingChangeEventSource.execute(LogMinerStreamingChangeEventSource.java:60)at io.debezium.pipeline.ChangeEventSourceCoordinator.streamEvents(ChangeEventSourceCoordinator.java:174)at io.debezium.pipeline.ChangeEventSourceCoordinator.executeChangeEventSources(ChangeEventSourceCoordinator.java:141)at io.debezium.pipeline.ChangeEventSourceCoordinator.lambda$start$0(ChangeEventSourceCoordinator.java:109)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:829)Caused by: io.debezium.DebeziumException: Could not find column COL_VARCHAR in eventat io.debezium.connector.oracle.logminer.processor.TransactionCommitConsumer.rowIdFromEvent(TransactionCommitConsumer.java:278)at io.debezium.connector.oracle.logminer.processor.TransactionCommitConsumer.acceptDmlEvent(TransactionCommitConsumer.java:134)at io.debezium.connector.oracle.logminer.processor.TransactionCommitConsumer.accept(TransactionCommitConsumer.java:114)at io.debezium.connector.oracle.logminer.processor.AbstractLogMinerEventProcessor.handleCommit(AbstractLogMinerEventProcessor.java:439)at io.debezium.connector.oracle.logminer.processor.AbstractLogMinerEventProcessor.processRow(AbstractLogMinerEventProcessor.java:273)at io.debezium.connector.oracle.logminer.processor.AbstractLogMinerEventProcessor.processResults(AbstractLogMinerEventProcessor.java:243)at io.debezium.connector.oracle.logminer.processor.AbstractLogMinerEventProcessor.process(AbstractLogMinerEventProcessor.java:189)at io.debezium.connector.oracle.logminer.LogMinerStreamingChangeEventSource.execute(LogMinerStreamingChangeEventSource.java:210)... 9 more
Do you see the same behaviour using the latest relesead Debezium version?
(Ideally, also verify with latest Alpha/Beta/CR version)
I dosen't test on 2.0.0.CR2 yet
Do you have the connector logs, ideally from start till finish?
please find attachment
How to reproduce the issue using our tutorial deployment?