0

공기 흐름 DAG에 작업이 있습니다. 세 가지 하위 작업이 있습니다. 안타깝게도이 상위 작업이 성공할 경우가 있지만 세 자녀 중 두 개는 실패합니다 (어린이 재 시도가 문제를 해결하지는 못합니다).달그 내의 공기 흐름에서 업스트림 작업을 지움

(실패하지 않았더라도) 부모가 재 시도해야합니다.

그래서 dag의 그래프보기에 충실히 가서이 상위 작업과 모든 하위 작업 (+ 재귀)을 '삭제'합니다.

내가 이걸 그 자체 내에서 할 수있는 방법은 무엇입니까?

답변

0

이 직접 귀하의 질문에 대답하지 않습니다하지만 난 더 나은 해결 방법을 제안 할 수 있습니다 :

default_args = { 
    'start_date': datetime(2017, 12, 16), 
    'depends_on_past': True, 
} 

dag = DAG(
    dag_id='main_dag', 
    schedule_interval='@daily', 
    default_args=default_args, 
    max_active_runs=1, 
    retries=100, 
    retry_delay= timedelta(seconds=120) 
) 

는 DAG에서 True로 depends_on_past를 설정합니다.

다음이 DAG의 작업에, 시도

DummyOperator(
     task_id='bar', 
     retries=0 
     dag=child) 

모든 작업이 실패 할 경우 실패로 DAG가 표시되어이 방법을 사용하여 재 시도를 제한 할 수 있습니다. 그런 다음 DAG가 다시 시도됩니다.