【发布时间】:2021-09-07 20:43:19
【问题描述】:
我有一个 DAG,其中有 2 个任务。
t1= PythonOperator(
task_id='Check_Files_in_S3',
provide_context=False,
python_callable=checkFilesInS3,
xcom_push=True,
dag=dag)
t2 = PythonOperator(
task_id='snowflakeLoad',
provide_context=True,
python_callable=snowflakeLoad,
xcom_push=True,
dag=dag)
t1>>t2
第一个任务在 S3 中查找文件,如果文件可用,则任务应该是成功的,并且应该使用下游任务将数据加载到雪花中。
我的要求是,如果文件不可用,那么 task1 需要发送邮件,那么它应该停止下游任务(task2)。有没有办法实现这一点,比如返回 false 会使下游任务失败?如果早期的 DAG 运行失败,depends_on_past 也不会运行 DAG?或者如果其中一项任务在当前运行中失败,它不会运行下游任务?
【问题讨论】: