Lesson 18 · Senior Airflow judgment
Scheduling realism: intervals, catchup, backfill, and time semantics
How to reason about schedule, logical date, intervals, catchup, and backfill like a senior engineer — especially when “when it ran” and “what data window it owns” are not the same thing.
Your win: explain why Airflow time semantics cause real production bugs, distinguish run time from data interval clearly, and reason about catchup/backfill decisions without hand-waving.
Why this is a senior Airflow topic
Many engineers can repeat the famous Airflow gotcha: the run for a day fires after the interval ends. That is a good start. But the more senior question is what operational mistakes happen when a team only half understands that rule.
The answer is: a lot. Wrong dashboards, wrong backfills, bad rerun assumptions, confused incident investigation, and people misreading which data window a run was supposed to own. Time semantics are not a trivia topic in Airflow. They are part of the correctness model.
That is why this page matters. It is trying to move you from “I know the gotcha” to “I understand what can go wrong in production if we reason about this carelessly.”
Why catchup and backfill are judgment calls
People often treat catchup and backfill as simple knobs. They are not. They express operational intent. Catchup asks whether the scheduler should create all missed intervals automatically. Backfill asks whether humans intentionally want to replay history.
That is why this repo’s `catchup=False` default matters. It is a posture decision. It says the normal operational path should avoid automatically flooding historical runs unless someone has a good reason to do that work on purpose.
What stronger answers sound like
The strongest answers here sound like: “Airflow scheduling is a time-semantics model, not just a cron string — the schedule defines intervals, logical date marks the interval start, runs fire after interval end, and catchup/backfill choices determine whether history is created automatically or intentionally replayed, which directly affects correctness and operational load.”
That answer is stronger because it moves from memorized syntax to a coherent operational mental model.
Re-read DAG runs and scheduling with a correctness lens
Use the official DAG-run docs and Astronomer scheduling guide together.
Check yourself (from memory)
Q1. Why is scheduling realism a senior Airflow topic?
Sources. Airflow DAG-run docs; Astronomer scheduling docs; repo map.