oracledb_cdc: Update commit_ts_ms to use a more accurate commit time#4451
oracledb_cdc: Update commit_ts_ms to use a more accurate commit time#4451josephwoodward wants to merge 1 commit into
Conversation
| Table: dml.Table, | ||
| Data: data, | ||
| Timestamp: dml.Timestamp, | ||
| Timestamp: dml.CommitTimestamp, |
There was a problem hiding this comment.
After this change, the Timestamp field on MessageEvent is sourced from dml.CommitTimestamp, which is now the value of V$LOGMNR_CONTENTS.COMMIT_TIMESTAMP. That field is what drives the source_ts_ms metadata in batcher.go#L173-L178, but the documented contract for source_ts_ms in input_oracledb_cdc.go#L80-L82 explicitly states it reflects "the database server's wall-clock time at the moment the DML executed, not the transaction commit time." After this PR, source_ts_ms and commit_ts_ms will be identical (both the commit time), and source_ts_ms will no longer match its documented meaning. Consider keeping the per-row TIMESTAMP column selected alongside COMMIT_TIMESTAMP so the operation timestamp continues to populate source_ts_ms while only commit_ts_ms is corrected.
|
Commits
Review
|
No description provided.