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]
