Partition enhancements for peripheral features#62463
Partition enhancements for peripheral features#62463uranusjr wants to merge 9 commits intoapache:mainfrom
Conversation
| from airflow.models.serialized_dag import SerializedDagModel | ||
|
|
||
| if args.table and args.field: | ||
| raise SystemExit("Cannot use --table and --field together") |
There was a problem hiding this comment.
I'm a bit surprised we don't support mutually exclusive by default, and noticed the messages are quite different for such cases. not something we should change in the PR though
|
This PR also closes #58445 |
d1122a1 to
4b73560
Compare
This flag is used instead of isinstance() to decouple class identity to partition logic.
4b73560 to
78b1022
Compare
78b1022 to
3a8d1b3
Compare
|
Alright I think this is going to work (or at least close). Not sure what other tests we can add, suggestions welcome. |
3a8d1b3 to
0bd9e87
Compare
|
cc @guan404ming with this change, I think we can improve some things in the API layer as well |
0bd9e87 to
67703ed
Compare
Thanks, will take a look tomorrow! |
guan404ming
left a comment
There was a problem hiding this comment.
Left some nit comments, overall looks good!
airflow-core/src/airflow/migrations/versions/0107_3_2_0_add_partition_fields_to_dag.py
Show resolved
Hide resolved
|
Hm, while removing the logic from CronPartitionTimetable, somehow |
|
Ah nevermind, I found one. |
0fd67ba to
20e1097
Compare
20e1097 to
5bbb170
Compare
This adds multiple fields on DagModel to support various introspection features on the dag’s next scheduled run. Those fields are populated when the scheduler calculates when the dag should be run (time-based), and can be retrieved via a CLI similar to how logical-date-based scheduling can be introspected.
A new flag
partitionedis added to timetable classes, and transferred to DagModel during dag-processing, so we can cheaply determine how a dag is being scheduled.I also added
partition_dateon DagRun since this seems to fit everything else. I’ll remove it if that’s not the right approach.Fix #58445. Fix #61086. Fix #61076. Close #61319 (this includes the message change contained in the PR).