zephyr45 commented on PR #13060:
URL: https://github.com/apache/seatunnel/pull/13060#issuecomment-6554090379

   Thanks @SEZ9 — the exact-head run has finished successfully, and here are 
the precise mappings for the earlier points.
   
   1. **Flink contiguous scale-down:** 
`KafkaSinkWriterTest#shouldFenceContiguouslyAssignedFlinkNamespacesAfterScaleDown`
 gives restored writer 0 (parallelism 2) the adjacent old writer-0 and writer-1 
states. It verifies that both unfinished namespaces are fenced and restore 
succeeds. `shouldFenceEveryAssignedWriterNamespaceAfterScaleDown` separately 
covers the Zeta-style old writer-0 and writer-2 assignment.
   2. **Omitted `transaction_prefix`:** 
`KafkaSinkWriterTest#shouldRestoreMixedGeneratedPrefixesAfterScaleDown` 
restores old writer-0/2 states with historical prefixes `SeaTunnel0001` and 
`SeaTunnel0002` into a writer whose newly generated job prefix is 
`SeaTunnel9999`. It verifies both historical namespaces are fenced and the 
adopted prefix is persisted. 
`shouldReuseGeneratedPrefixWhenStatelessWriterRetries` separately verifies that 
the job-level generated prefix survives sink serialization and is reused by a 
retry.
   3. **Legacy shared namespace:** the concurrent probe-chain growth remains 
open as a legacy-only efficiency limitation, not a correctness gap. For this PR 
I am retaining safe per-assigned-state probing: selecting only subtask 0 is 
unsafe for historical omitted-prefix checkpoints because other restored writers 
can own distinct old generated prefixes. Deduplicating once per prefix across 
writers would require cross-writer coordination that is not present in the 
existing sink state/API.
   4. **Docs:** the `transaction_prefix` option row in both EN and ZH 
explicitly states `<prefix>-<writer>-<sequence>` and links to the Semantics 
section. The recovery/rescaling statement is no longer Zeta-specific: the 
implementation consumes and fences the states assigned by the engine without 
assuming a redistribution formula, covering both Zeta modulo and Flink 
contiguous assignment. Spark's separate constraint is documented as 
`spark.speculation=false`.
   5. **CI:** the exact-head Build for 
`21d4cb19869a7875f52ba5035e20f177599feaaa` completed successfully: 
https://github.com/zephyr45/seatunnel/actions/runs/41218673502. All 96 jobs 
completed with no failures, including `kafka-connector-it` on Java 11 and Java 
17.
   
   No branch changes were made after that tested 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]

Reply via email to