Hi Max, Following https://lists.apache.org/thread.html/0e21230e08f07ef6f8e3c59887e9005447d6932639d3ce16a103078f@%3Cdev.airflow.apache.org%3E <https://lists.apache.org/thread.html/0e21230e08f07ef6f8e3c59887e9005447d6932639d3ce16a103078f@%3Cdev.airflow.apache.org%3E>, I’m trying to prepare an AIP for supporting multiple-scheduler in Airflow (mainly for HA and Higher scheduling performance).
Along the process of code checking, I found that there is one attribute of DagModel, “scheduler_lock”. It’s not used at all in current implementation, but it was introduced long time back (2015) to allow multiple schedulers to work together (https://github.com/apache/airflow/commit/2070bfc50b5aa038301519ef7c630f2fcb569620 <https://github.com/apache/airflow/commit/2070bfc50b5aa038301519ef7c630f2fcb569620> ). Since you were the original author of it, it would be very helpful if you can kindly share why the multiple-schedulers implementation was removed eventually, and what challenges/complexity there were. (You already shared a few valuable inputs in the earlier discussion https://lists.apache.org/thread.html/d37befd6f04dbdbfd2a2d41722352603bc2e2f97fb47bdc5ba454d0c@%3Cdev.airflow.apache.org%3E <https://lists.apache.org/thread.html/d37befd6f04dbdbfd2a2d41722352603bc2e2f97fb47bdc5ba454d0c@%3Cdev.airflow.apache.org%3E> , mainly relating to hiccups around concurrency, cross DAG prioritisation & load on DB. Other than these, anything else you would like to advise?) I will also dive into the git history further to understand it better. Thanks. XD