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]
