potiuk commented on a change in pull request #22685:
URL: https://github.com/apache/airflow/pull/22685#discussion_r841108675



##########
File path: airflow/dag_processing/processor.py
##########
@@ -231,6 +232,10 @@ def _kill_process(self) -> None:
         if self._process.is_alive() and self._process.pid:
             self.log.warning("Killing DAGFileProcessorProcess (PID=%d)", 
self._process.pid)
             os.kill(self._process.pid, signal.SIGKILL)
+
+            # Reap the spawned zombie

Review comment:
       BTW - one more thought. I actually had - not too often, but at least few 
times in my life (hardware problem) - where sigkill did not actually work and 
process was running indefinitely (even though sig kill is esentially the 
"should always work" case). But maybe some "what-if" discussion might be useful 
(XKCD reference accidental).
   
   Should we handle this case? Also what happnes if (this is unlikely because 
we started the process) if we have no permission to send sigkill to the 
process? Not sure about scenario that can lead to it (changing effecitve group 
of the user? . Do you think we should handle it?
   
   This is a bit of "academic" discussion, but if we are going so deeply that 
we are active-waiting for the sigkilled process, I thought we might at least 
spend a bit of time on pondering on various super-edge cases :)




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