Airflow简单任务在没有日志且并行性较小的情况下失败LocalExecutor(正在使用SequentialExecutor)

Airflow简单任务在没有日志且并行性较小的情况下失败LocalExecutor(正在使用SequentialExecutor),airflow,airflow-scheduler,Airflow,Airflow Scheduler,使用SequentialExecutor运行的dag(v1.10.5)现在有许多(尽管不是全部)简单任务,在使用LocalExecutor运行时,这些任务在没有任何日志信息的情况下失败,并且并行性最小,例如 #气流的总体任务并发限制 并行度=8#,与lscpu显示的内核数相同 #每个dag的最大任务数 dag_并发=2 #可在气流上运行的给定dag的最大实例数 每个dag的最大活动运行次数=1 #每个辅助线程/核心使用的最大线程数 最大螺纹数=2 #总可用内存量为40G #CPU:8(插座4个

使用
SequentialExecutor
运行的dag(v1.10.5)现在有许多(尽管不是全部)简单任务,在使用
LocalExecutor
运行时,这些任务在没有任何日志信息的情况下失败,并且并行性最小,例如


#气流的总体任务并发限制
并行度=8#,与lscpu显示的内核数相同
#每个dag的最大任务数
dag_并发=2
#可在气流上运行的给定dag的最大实例数
每个dag的最大活动运行次数=1
#每个辅助线程/核心使用的最大线程数
最大螺纹数=2
#总可用内存量为40G
#CPU:8(插座4个,每个插座4个芯)
看见https://www.astronomer.io/guides/airflow-scaling-workers/
查看
airflow Web服务器。*
日志没有任何异常,但查看
airflow scheduler.out
我明白了

[airflow@airflowetl气流]$tail-n 20气流计划程序.out
....
[2019-12-18 11:29:17773]{scheduler_job.py:1283}INFO-执行者报告mydag.task_level1_table1执行日期=2019-12-18 21:21:48.424900+00:00退出,状态为重试1失败
[2019-12-18 11:29:17779]{scheduler_job.py:1283}INFO-执行者报告mydag.task_level1_table2执行日期=2019-12-18 21:21:48.424900+00:00退出,状态为重试1失败
[2019-12-18 11:29:17782]{scheduler_job.py:1283}INFO-执行者报告mydag.task_level1_table3执行日期=2019-12-18 21:21:48.424900+00:00退出,状态为重试1失败
[2019-12-18 11:29:18833]{scheduler_job.py:832}警告-将1个任务实例设置为state=None,因为它们关联的DagRun未处于运行状态
[2019-12-18 11:29:18844]{scheduler_job.py:1283}INFO-执行者报告mydag.task_level1_table4执行日期=2019-12-18 21:21:48.424900+00:00退出,状态为try_number 1成功
....
但我真的不知道该从中得到什么


有人知道这里会发生什么或者如何获得更多有用的调试信息吗?

再次查看我的
lscpu
规格,我注意到

[airflow@airflowetl空气流量]$lscpu
架构:x86_64
CPU操作模式:32位、64位
字节顺序:小端
中央处理器:8
在线CPU列表:0-7
每个芯的螺纹数:1
每个插座的芯数:4
插座:2个
注意每个核心的
线程:1

查看我的
aiffort.cfg
设置,我看到
max\u threads=2
。设置
max_threads=1
并重新启动这两个线程似乎已经解决了问题


如果有人更了解引擎盖下到底出了什么问题(例如,为什么任务失败,而不是仅仅等待另一个线程可用),那么他很有兴趣了解一下

再次查看我的
lscpu
规格,我注意到

[airflow@airflowetl空气流量]$lscpu
架构:x86_64
CPU操作模式:32位、64位
字节顺序:小端
中央处理器:8
在线CPU列表:0-7
每个芯的螺纹数:1
每个插座的芯数:4
插座:2个
注意每个核心的
线程:1

查看我的
aiffort.cfg
设置,我看到
max\u threads=2
。设置
max_threads=1
并重新启动这两个线程似乎已经解决了问题


如果有人更了解引擎盖下到底出了什么问题(例如,为什么任务失败,而不是仅仅等待另一个线程可用),那么他很有兴趣了解一下

在调试过程中。这似乎很有用:。调试过程中需要阅读更多内容。这似乎很有用:。需要更多阅读了解更多关于为什么没有日志就失败的信息吗?@Benbentwo没有,但我确实认为,我将并行度
max_threads
设置为超出我的机器实际支持的值是问题所在(因为这是在测试之间发生变化的唯一原因)。引擎盖下面发生了什么事,艾德克。如果愿意的话,你可以在CKAN repo上打开一个github问题来询问这个问题。有没有发现更多关于为什么没有日志就失败的信息?@Benbentwo没有,但我确实认为,我将并行度
max_threads
设置为超出我的机器实际支持的值是问题所在(因为这是测试之间唯一发生变化的事情)。这里到底发生了什么,IDK。如果你愿意的话,你可以在CKAN回购协议上打开一个github问题来询问这个问题。