[ 
https://issues.apache.org/jira/browse/AIRFLOW-5545?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17204198#comment-17204198
 ] 

ASF subversion and git services commented on AIRFLOW-5545:
----------------------------------------------------------

Commit 9860719c72be1cab7cd8d117e26457e7207b2be3 in airflow's branch 
refs/heads/master from Daniel Imberman
[ https://gitbox.apache.org/repos/asf?p=airflow.git;h=9860719 ]

[AIRFLOW-5545] Fixes recursion in DAG cycle testing (#6175)

* Fixes an issue where cycle detection uses recursion

and stack overflows after about 1000 tasks

(cherry picked from commit 63f1a180a17729aa937af642cfbf4ddfeccd1b9f)

* reduce test length

* slightly more efficient

* Update airflow/utils/dag_cycle_tester.py

Co-authored-by: Kaxil Naik <[email protected]>

* slightly more efficient

* actually works this time

Co-authored-by: Daniel Imberman <[email protected]>
Co-authored-by: Kaxil Naik <[email protected]>

> dag.test_cycle uses recursion, limiting DAG length.
> ---------------------------------------------------
>
>                 Key: AIRFLOW-5545
>                 URL: https://issues.apache.org/jira/browse/AIRFLOW-5545
>             Project: Apache Airflow
>          Issue Type: Bug
>          Components: DAG
>    Affects Versions: 1.10.3, 1.10.4, 1.10.5
>            Reporter: Daniel Imberman
>            Assignee: Daniel Imberman
>            Priority: Critical
>             Fix For: 2.0.0
>
>
> DAG Parsing is currently breaking for long DAGs because test_cycle uses 
> recursive DFS
> Example breaking DAG
>  
> {code:java}
> dag = DAG( 'dag', start_date=DEFAULT_DATE, default_args={'owner': 'owner1'})
> with dag: 
>     last = dag 
>      for i in range(1,10000): 
>          op = DummyOperator(task_id='{}'.format(i)) 
>          last >> op 
>          last = op
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to