You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by "PrafullPandey06 (via GitHub)" <gi...@apache.org> on 2026/07/22 14:44:37 UTC

Re: [I] Task supervisor lingers indefinitely on CeleryExecutor when psutil.Process.wait() returns None (socket_cleanup_timeout never triggers) [airflow]

PrafullPandey06 commented on issue #70117:
URL: https://github.com/apache/airflow/issues/70117#issuecomment-5047615518

   You're right I shouldn't have stated the dumb-init reaping path as confirmed root cause. I don't have strace evidence showing PID 1 actually calling waitpid on the task PID, and as you pointed out, that shouldn't normally happen while the supervisor is alive. I've updated the issue title and description to reflect this.
   
   That said, the hang is reproducible and the impact is real  26–30 stuck supervisors accumulating ~8–10 GB of wasted memory per worker pod. Whatever is causing wait(timeout=0) to return None, the supervisor doesn't handle that case, and the cleanup timeout has no independent fallback.
   
   Your reproduction script confirms the exact code gap  _check_subprocess_exit only handles an int return or TimeoutExpired, so None is silently ignored. 
   


-- 
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: commits-unsubscribe@airflow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org