wgzhao commented on PR #13111: URL: https://github.com/apache/seatunnel/pull/13111#issuecomment-6619419587
Thanks @DanielLeens for the thorough review. All four points are addressed in the new head. - **Issue 1 (blocking): stable discriminator.** Replaced the random per-run token with an 8-hex CRC32 of the source table identity. `DorisSinkFactory` passes `context.getCatalogTable()` (the source table, before `renameCatalogTable`) through `DorisSink` to `DorisSinkWriter`, so the same writer keeps the same prefix across attempts and the existing abort probe cleans pre-commits left by a failed attempt that had no newer checkpoint. The persisted `DorisSinkState.labelPrefix` is still used for the initial abort, so old-format states remain recoverable. Added `testSameSourceTableKeepsTwoPhaseCommitLabelAcrossAttempts`; the distinct-label test now uses two different source tables. - **Issue 2: 2PC E2E.** Added `mysqlcdc_multi_table_to_doris_2pc.conf` and `testMultiTableCDCSinkToSingleDorisTableWithTwoPhaseCommit` with `sink.enable-2pc = "true"`, `format = "json"`, dedicated `_multi2pc_*` source tables and a dedicated sink table. It writes 204 rows and fails at the first checkpoint on pre-fix code. - **Issue 3: label length and docs.** The discriminator is 8 hex characters (about 9 characters of label growth), and the non-2PC timestamp/sequence remain. The Doris FAQ in `docs/en` and `docs/zh` now documents the label shape and Doris' 128-character limit. - **Issue 4: unused generator field.** Kept the `DorisStreamLoadFactory` signature and documented the retained `LabelGenerator` on the factory interface. Local connector suite: 163 tests, 0 failures. The E2E module test-compiles, and the fork Build CI is rerunning on the new head. -- 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]
