amoghrajesh commented on PR #54089:
URL: https://github.com/apache/airflow/pull/54089#issuecomment-3154605942

   Both your concerns, @potiuk:
   
   > less important -> it does not allow to run code that implements SIGALARM 
handling on their own (for example some timout handlers in Pytest use SIGALRM 
for test timeouts, but I can imagine other libraries doing it internally
   
   more important -> badly written C code that does not check for alarms 
periodically might cause the task to run forever - without respecting the 
timeout. SIGALRM is fired, passed to the long-running C-code and it waits until 
the c code checks for it. This caused a number of issues raised to us in the 
past.
   
   Should be addressed if we can move the timeout mechanism to the supervisor, 
it will monitor tasks externally.
   Supervisor ─── Task Process
       ↑                            ↓
   monitors &           runs user code
   handles timeout 
   
   
   And I think it should not be very hard to do so, we just have to use the 
comms to send across a message before running a task to communicate to the 
supervisor that a timeout is configured and it is going to be run with a 
timeout. We could repurpose the `kill` implementation for both execution 
timeout as well as no reports from the task.


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