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

   Quick continuity check on the newest activity: since my last full review 
(2026-08-29T00:21:33Z, head `e3e57c19518e`), exactly one commit has landed — 
`8698a83d00b3` ("[Chore] Retry CI"). I checked it directly (`gh api 
repos/apache/seatunnel/commits/8698a83d00b3...`): it changes 0 files. So there 
is no new code on this PR to re-review; my previous pass already reflects the 
current head's actual content byte-for-byte, and I re-verified that 
independently by re-reading the full diff against `dev` again from scratch (all 
of `MultiTableSink.java`, `MultiTableSinkWriter.java`, the committer classes, 
`SeaTunnelSink.java`, and the file-sink changes) rather than trusting that 
assumption.
   
   Restating the standing conclusion so it's not lost in a long thread: **no 
code blockers remain.** The two issues from my prior round (quarantine cascade 
closing a shared writer out from under a healthy sibling table, and the legacy 
merged-state restore leaking orphan tmp transactions for non-canonical UUID 
prefixes) are both fixed and covered by targeted regression tests 
(`testRuntimeFailureDoesNotCloseSharedWriterForHealthyAlias`, 
`shouldCleanOrphanTransactionsForEveryRestoredUuidPrefix`) that I confirmed 
actually exercise the failure scenario, not just the happy path. Two 
non-blocking items remain open as documented carryovers:
   - Medium: shared checkpoint/commit records are keyed by an 
arbitrarily-chosen "canonical" alias (`aliasedIdentifiers.get(0)`); if that 
specific source table is later removed from the job config while a sibling 
alias to the same destination survives, the sibling can restore with empty 
state on the next recovery because the checkpoint was never persisted under its 
own identifier. Worth either documenting this constraint on 
`getPhysicalDestinationIdentifier()` or keying shared records by a 
destination-scoped synthetic identifier instead of an arbitrary alias.
   - Low: `closeCreatedWriters` only triggers on `IOException` (an unchecked 
exception from `createWriter`/`restoreWriter` would still leak already-created 
sibling writers), and the resource-manager sizing in 
`MultiTableSinkAggregatedCommitter` counts by alias rather than by distinct 
writer instance.
   
   CI update: `Build` is currently `in_progress` on this head rather than 
failed, so the Maven Central 429 rate-limit flake I flagged last round on the 
fork's run appears cleared by this retry. Will need to see it finish green.
   
   One housekeeping item outside the code itself: `mergeStateStatus` is still 
`BLOCKED` (`reviewDecision: REVIEW_REQUIRED`) because @SEZ9's 
`CHANGES_REQUESTED` review is still standing from head `9a7bac1e4671` 
(2026-08-23) — before either of the two fixes above landed. @SEZ9, could you 
take a look at whether your two open items from that round are addressed on the 
current head, or dismiss/update the review if they are? I can't do that myself 
since I only have comment-level permissions here.
   
   @hesam-oxe, no action needed from you right now beyond letting CI finish — 
really solid work closing out the quarantine-cascade and orphan-transaction 
issues with precise, minimal fixes and tests that reproduce the exact original 
failure modes rather than just re-testing the happy path.
   


-- 
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