villebro commented on PR #43627:
URL: https://github.com/apache/superset/pull/43627#issuecomment-5448302747

   Follow-up (`7ce5c3f9e3`) — tightened the design after a self-review of the 
cancellation logic:
   
   - **Removed the "wedged-ABORTING" escalation and dropped `terminate=True` 
from the reaper's revoke.** Layering forced Celery termination on top of the 
cooperative `on_abort` path was redundant and risky: orphan detection is 
heartbeat-based, and a healthy but CPU-bound task can briefly starve its own 
heartbeat thread, so `terminate=True` could fire `SoftTimeLimitExceeded` into 
live, healthy work on a false positive. It also duplicated a mechanism the 
cooperative path already owns.
   - The reaper now recovers **only** tasks with no live worker (stale 
heartbeat): transition to `FAILURE`, release waiters, and `revoke` **without** 
`terminate` (prevents a redelivered job from re-running under `task_acks_late`; 
never signals a running process). Cooperative cancellation of live workers is 
unchanged, and query cancellation stays entirely within the existing `on_abort` 
mechanism — no parallel/conflicting cancellation path.
   
   Also rewrote the PR description to be objective (dropped the "zombie" 
framing — a worker that ends mid-task simply leaves the row unresolved).
   


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


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to