uranusjr commented on issue #18304:
URL: https://github.com/apache/airflow/issues/18304#issuecomment-945362143


   > A possible fix could be to detect the deadlock situation and automatically 
move dagrun 2 into queued state, clearing path for the dagrun 1. Not sure if 
this is feasible from technical perspective.
   > Another option could be to add a feature "Mark queued" for dagruns so that 
they can be deactivated manually without touching individual tasks, which is 
not obvious.
   
   I kind of feel maybe we should _always_ do this instead of trying to detect 
a deadlock at all. So if all the DAG run's "visiting" tasks (not sure what the 
right term is) are waiting for their respective past instances, the DAG run 
goes into a "running but not actually" state, which is treated as running in 
the UI, but queued in the scheduler. When any of those tasks receives its past 
instance's result, the run resumes its running state.
   
   If that sounds complicated, I think it's because it is (mainly the "all 
visiting tasks" part). So maybe a more pragmatic approach would be to simply 
add a button for users to resolve the deadlock themselves...


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