Greetlist commented on issue #20308:
URL: https://github.com/apache/airflow/issues/20308#issuecomment-1121933204

   @jskalasariya If you also use the deferrable task, you can fix this via 
https://github.com/apache/airflow/issues/20308#issuecomment-1005435631 
temporarily. You can just try to change these codes and make some tests to 
checkout whether this problem is disappear.
   At this moment, In my product env:
   **airflow version**:
   > 2.2.0
   
   **airflow components**:
   > 1. four schedulers
   > 2. three triggerers
   > 3. two web servers
   
   **operating system**:
   > Ubuntu16.04
   
   **machine resource**:
   > 64G memory
   > 6Core(2slots * 3Core) NUMA Disabled
   
   **database**:
   > percona-server: 8.0.17 in k8s cluster as Deployment
   
   works as expected.
   By the way, if you want to use the deferrable operator's defer_timeout 
parameter,you may have some **dead-lock** problems:
   ```models/trigger.py[func submit_* clean_unused]``` will hold row lock 
**AND** ```jobs/scheduler_job.py[func check_trigger_timeouts])``` will hold 
another row lock. I fix this dead-lock by adding ```with_row_locks```,  
```order by``` and split query and update into two steps:
   
![image](https://user-images.githubusercontent.com/18439743/167544836-b586eb46-9516-41ba-a627-df70e7fc98ae.png)
   
   
   


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