Сбой планировщика воздушного потока из-за тупика SQL - PullRequest
0 голосов
/ 08 февраля 2019

Я использую Airflow 1.9.0 на Celery Executor.У меня есть два сервера - один работает планировщик, веб-сервер и рабочий 1, а другой сервер работает рабочий 2 и веб-сервер.

Недавно мы столкнулись с проблемой, когда происходит сбой планировщика и журнал показывает, что есть тупикв таблице task_instance сервера SQL проследите ниже.

До сих пор я пытался уменьшить количество процессов планировщика, а также настроить, чтобы в пуле соединений sqlAlchemy было только одно соединение с БД, но не повезло.Любая причина, по которой может произойти взаимоблокировка?

sqlalchemy.exc.ProgrammingError: (pyodbc.ProgrammingError) ('42000', '[42000] [FreeTDS] [SQL Server] Транзакция (ID процесса 653) былазаблокирован для ресурсов блокировки с другим процессом и выбран в качестве жертвы тупика. Перезапустите транзакцию. (1205) (SQLExecDirectW) ')

[SQL:' UPDATE task_instance SET состояние =?ОТ task_instance, dag_run ГДЕ task_instance.dag_id IN (?) И task_instance.state IN (?,?) AND dag_run.dag_id = task_instance.dag_id AND dag_run.execution_date = task_instance.execution_run = параметры:!(Нет, «generate-xml-report», «в очереди», «запланировано», «выполняется»)]

(Справочная информация об этой ошибке: http://sqlalche.me/e/f405)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...