DanielLeens commented on PR #11512:
URL: https://github.com/apache/seatunnel/pull/11512#issuecomment-5846256276

   Thanks for flagging this, @SEZ9 — I don't think anything regressed here, but 
I can see why it looks that way from where you're reading.
   
   The full F1–F8 per-finding answer *is* in the thread: @goutamadwant posted 
it in [this 
comment](https://github.com/apache/seatunnel/pull/11512#issuecomment-5808344658)
 (2026-09-24, right after your ask for concrete pointers), and I independently 
re-verified every one of those pointers against the source at the same head 
(`0b38a3d9b7c2`) in [my 
follow-up](https://github.com/apache/seatunnel/pull/11512#issuecomment-5812718826)
 later that day. I suspect this is the same long-comment "show more" collapse 
we ran into earlier in this thread (see my 2026-09-11 note) rather than an 
actual gap — GitHub sometimes folds long comments behind a toggle depending on 
how they're loaded, and the F4–F6 sections in particular sit past that fold.
   
   For convenience, here's the compact version of what's in that comment, 
re-verified by me directly against source rather than restated from memory:
   
   - **F1** — `CdcEnumeratorProgressReport.MAX_ACTIVE_SPLITS = 100`; the 
constructor truncates via `Math.min(splitDetails.size(), MAX_ACTIVE_SPLITS)` 
and sets `activeSplitsTruncated`. Enforced, not documentation-only.
   - **F2** — `docs/en/developer/cdc-progress.md` (native-position security 
rule) explicitly forbids credentials, connection URLs, and authentication 
material in connector-native position payloads.
   - **F3** — the wire-fixture tests in 
`ReportCdcProgressOperationSerializationTest` build byte buffers from literal 
enum-name strings (e.g. `"BEST_EFFORT"`, `"ASSIGNING"`) and assert an exact 
byte-for-byte match against the writer's output; an ordinal-based codec would 
fail that comparison.
   - **F4** — the "Runtime collection" section of `cdc-progress.md` describes 
the coordinator deriving enumerator task-group locations and requesting reports 
from assigned members — the actual coordinator-poll model, not a pull/derive or 
separate registration protocol.
   - **F5** — the "Current limitations" section names the six base CDC 
connectors with provider wiring (MySQL, PostgreSQL, Oracle, SQL Server, DB2, 
MongoDB) and explicitly calls out TiDB/Vitess as not wired.
   - **F6** — `CdcProgressLifecycle.SNAPSHOT`'s Javadoc is reader-only: "The 
reader is reading snapshot splits." No enumerator-owned discovery/assignment 
language remains.
   - **F7** — the constructor's `validateCount`/`validateExactSplitCounts` 
reject any negative count and any `assigned != completed + running` 
inconsistency when all three counts are `EXACT`; covered by 
`CdcProgressModelTest`.
   - **F8** — `CdcSnapshotSplitProgress` is `final` with only `final` fields 
and no setters, and its Javadoc now states the deep-immutability guarantee 
explicitly (fields final, `CdcProgressValue` immutable, `CdcProgressPosition` 
defensively copies its coordinate map).
   
   Nothing here has changed since `0b38a3d9b7c2` — the two commits since then 
(a clean dev-sync and a small null-guard fix, both covered in my 2026-09-25 
approval) don't touch any of the F1–F8 files. So from my side: all eight remain 
resolved, none deferred, and my `APPROVED` review stands. If the links above 
still don't render fully on your end, let me know and I can paste the 
individual file/line references directly into a comment instead of relying on 
permalinks.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to