Rangsh commented on PR #12218:
URL: https://github.com/apache/seatunnel/pull/12218#issuecomment-5602080517

   @DanielLeens Thanks for the thorough review — especially the 
partial-submission analysis in Issue 1. That gap was real, and I’ve addressed 
it in the follow-up commit (`258a779`).
   
   Changes:
   1. Hoisted `executionTracker` out of the `try` block so post-publish failure 
can best-effort abort already submitted / enqueued work before bookkeeping is 
removed
   2. Updated `submitBlockingTask` to record each `Future` as it is submitted, 
so a mid-batch `RejectedExecutionException` still leaves earlier workers 
reachable for cancellation
   3. On rollback: abort the tracker, remove matching entries from 
`threadShareTaskQueue`, release classloader references owned by the published 
context, then clear `executionContexts` / `cancellationFutures`
   4. Added `testDeployLocalTaskRollsBackAfterPartialBlockingSubmitRejection`, 
which injects a real `RejectedExecutionException` from `submitBlockingTask` 
after partial submission (mixed thread-share + blocking under `PART` mode), and 
asserts:
      - no leaked active context / cancellation future
      - no residual cooperative-queue trackers
      - orphaned tasks stop running
      - classloader references are released
      - a later deploy of the same `TaskGroupLocation` actually executes
   
   `TaskExecutionServiceTest`: `Tests run: 17, Failures: 0, Errors: 0, Skipped: 
0`
   
   Please take another look when you have time. Thanks again!


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