Skip to content

oracledb_cdc: exclude LogMiner meta events for unmonitored tables when LOB is enabled#4447

Merged
josephwoodward merged 2 commits into
mainfrom
jw/leakedlmrecords
May 21, 2026
Merged

oracledb_cdc: exclude LogMiner meta events for unmonitored tables when LOB is enabled#4447
josephwoodward merged 2 commits into
mainfrom
jw/leakedlmrecords

Conversation

@josephwoodward
Copy link
Copy Markdown
Contributor

@josephwoodward josephwoodward commented May 21, 2026

Occasionally it's possible that, under certain conditions, LogMiner meta events find their way into the event stream though they're not related to any of the filtered tables (this appears to be when lob_enabled is true, when we see a lot more activity in LogMiner). This change plugs that leak and includes an integration test to verify and catch any future regressions.

image

@josephwoodward josephwoodward marked this pull request as ready for review May 21, 2026 22:30
@claude
Copy link
Copy Markdown

claude Bot commented May 21, 2026

Commits

  1. The second commit message — oracledb_cdc: filter out additional logminer events lob enabled is true — is grammatically awkward (reads as if missing a when before lob enabled). Consider rephrasing to something like oracledb_cdc: filter logminer events for unmonitored tables when lob is enabled so the intent is clearer.
  2. The test commit (oracledb_cdc: add integration test) is ordered before the fix commit. At the first commit's state in isolation, the new test would fail because the bug it exercises is still present, which breaks git bisect-friendly history. Either swap the order (fix first, then test) or squash both into a single commit.

Review
The fix is correct: LOB op codes (9=SELECT_LOB_LOCATOR, 10=LOB_WRITE, 11=LOB_TRIM) carry SEG_OWNER/TABLE_NAME and must be subject to the by-table predicate. The previous logic was appending them to the unfiltered transaction-control branch (6/7/36) whenever lob_enabled was true, so LOB writes to unmonitored tables leaked through. Moving them into the dmlCodes branch matches the comment block above the builder.

LGTM

@josephwoodward josephwoodward merged commit ec48a0d into main May 21, 2026
8 checks passed
@josephwoodward josephwoodward deleted the jw/leakedlmrecords branch May 21, 2026 22:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants