Rangsh commented on issue #12441:
URL: https://github.com/apache/seatunnel/issues/12441#issuecomment-5853901285

   @Vivek1106-04 @DanielLeens @SEZ9
   
   I have opened the fix PR for this issue: 
https://github.com/apache/seatunnel/pull/12493
   
   It follows the agreed direction and constraints:
   
   1. Unlocked drain with one shared savepoint request/future + gate installed 
under the lock
   2. Drain wait outside the lock; interrupt / shutdown / completed / 
create-failure paths clear the gate and complete the shared future exceptionally
   3. While the gate is set, all non-savepoint `tryTriggerPendingCheckpoint` 
paths (general / completed-point / schema-change) skip create and re-arm
   4. Deterministic part-1 unit coverage in `CheckpointCoordinatorTest`
   
   **Part 1 red → green** (as required):
   
   | | |
   |---|---|
   | Test | 
`CheckpointCoordinatorTest#testTryTriggerNotBlockedBySavepointDrain` |
   | Red base | `c3f06f9a82c119e427df0fb1f440bae583148f62` (`dev`) |
   | Red | trigger blocked for the full drain while `pendingCounter > 0` |
   | Green | same test + gate / coalesce / interrupt-cleanup — all passing on 
the PR |
   
   Drain lifetime is owned by the test via `pendingCounter` (latch-style), not 
wall-clock sleeps.
   
   **Part 2** (cross-pipeline) is noted in the PR as pending #12165, per the 
ordering we agreed. #12442 trigger-failure policy is kept out of this change.
   
   Please take a look when you have a chance. Thanks!


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