-
Bug
-
Resolution: Done
-
Major
-
None
-
1.9.2.Final
-
None
-
False
-
None
-
False
Bug report
In specific scenario when:
- two updates are executed for the same row in single transaction
- one of the column is updated to NULL value
- lob.enabled option is true
The value of column updated to NULL is not captured properly. The value is still a value before updated instead of being null.
What Debezium connector do you use and what version?
1.9.2.Final
What is the connector configuration?
{ "name" : "test_connector", "config" : { "connector.class" : "io.debezium.connector.oracle.OracleConnector", "database.hostname" : "10.232.31.229", "database.port" : "1521", "database.user" : "dbzuser", "database.password" : "***", "database.dbname" : "TESTINT", "database.server.name" : "oracle12c", "database.history.kafka.bootstrap.servers" : "kafka:9091", "database.history.kafka.topic" : "schema-changes", "schema.include.list" : "DEV_PZ", "table.include.list" : "DEV_PZ.TEST_TABLE", "snapshot.mode" : "schema_only", "log.mining.strategy" : "online_catalog", "lob.enabled" : true } }
What is the captured database version and mode of depoyment?
Oracle (ver. Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
How to reproduce the issue using our tutorial deployment?
Initial script:
CREATE TABLE TEST_TABLE ( COL_NO NUMBER(10), COL_TEXT1 VARCHAR(50), COL_TEXT2 VARCHAR(50) ); ALTER TABLE TEST_TABLE ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS; INSERT INTO TEST_TABLE VALUES (1, 'Text1', 'Text2'); COMMIT;
when following updates are executed:
update TEST_TABLE set COL_TEXT1 = 'Text1_modified' where COL_NO = 1;
update TEST_TABLE set COL_TEXT2 = NULL where COL_NO = 1;
COMMIT;
in generated message the value of column COL_TEXT2 is still 'Text2' instead of null:
{"before":{"COL_NO":1,"COL_TEXT1":"Text1","COL_TEXT2":"Text2"},"after":{"COL_NO":1,"COL_TEXT1":"Text1_modified","COL_TEXT2":"Text2"},"source":{"version":"1.9.2.Final","connector":"oracle","name":"oracle12c","ts_ms":1654091804000,"snapshot":"false","db":"TESTINT","sequence":null,"schema":"DEV_PZ","table":"TEST_TABLE","txId":"17000d00dc210000","scn":"89191751","commit_scn":"89191260","lcr_position":null},"op":"u","ts_ms":1654091807263,"transaction":null}
What's interesting any change of value to non NULL in second update is captured properly.
- is depended on by
-
DBZ-5295 Lob type data is inconsistent between source and sink, after modifying the primary key
- Closed