Airflow
documentation clearly states
SubDAGs must have a schedule and be enabled. If the SubDAG’s schedule is set to None or @once, the SubDAG will succeed without having done anything
Although we must stick to the documenation, I've found they work without a hiccup even with schedule_interval
set to None
or @once
. Here's my working example.
My current understanding (I heard about Airflow
only 2 weeks back) of SubDagOperator
s (or subdag
s) is
Airflow
treats asubdag
as just anothertask
- They can cause deadlock but easy workarounds exist
My questions are
- Why does my example work when it shouldn't?
- Why shouldn't my example work (as per the docs) in the first place?
- Any subtle differences between behaviour of
SubDagOperator
and otheroperator
s? - When solutions of known problems exist, why is there so much uproar against
SubDagOperator
s?
I'm using puckel/docker-airflow with
Airflow 1.9.0-4
Python 3.6-slim
CeleryExecutor
withredis:3.2.7