-
Notifications
You must be signed in to change notification settings - Fork 13.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DAGs scheduled on February 29th are not executed. #38174
Comments
Thanks for opening your first issue here! Be sure to follow the issue template! If you are willing to raise PR to address this issue please do so, no need to wait for approval. |
Next time we see it - in 4 years. Hopefully someone will fix it by then. |
Actually, the issue is not in Airflow, it's an issue in >>> from croniter import croniter
>>> import datetime
>>> croniter("0 0 28 2 *", start_time=datetime.datetime(2024, 1, 1)).get_prev(datetime.datetime)
datetime.datetime(2023, 2, 28, 0, 0)
>>> croniter("0 0 29 2 *", start_time=datetime.datetime(2024, 1, 1)).get_prev(datetime.datetime)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Users/hussein-awala/anaconda3/envs/airflow/lib/python3.11/site-packages/croniter/croniter.py", line 204, in get_prev
return self._get_next(ret_type or self._ret_type, is_prev=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/hussein-awala/anaconda3/envs/airflow/lib/python3.11/site-packages/croniter/croniter.py", line 289, in _get_next
result = self._calc(self.cur, expanded,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/hussein-awala/anaconda3/envs/airflow/lib/python3.11/site-packages/croniter/croniter.py", line 563, in _calc
raise CroniterBadDateError("failed to find prev date")
croniter.croniter.CroniterBadDateError: failed to find prev date Airflow catches the exception and returns |
I think it was fixed two weeks ago, I will check: kiorky/croniter@6824882 |
Apache Airflow version
2.8.3
If "Other Airflow 2 version" selected, which one?
No response
What happened?
If the DAG is scheduled on Feb 29th, it will never be executed automatically on the scheduled date.
What you think should happen instead?
A new DAG run should be created and scheduled on Feb 29th
How to reproduce
schedule_interval = "0 0 29 2 *"
dag = DAG(dag_name,
default_args={},
schedule_interval=schedule_interval,
sla_miss_callback=None,
max_active_runs=1,
concurrency=20
)
Operating System
Linux
Versions of Apache Airflow Providers
2.8.3
Deployment
Official Apache Airflow Helm Chart
Deployment details
No response
Anything else?
This is the log when I tried to force scheduling
Are you willing to submit PR?
Code of Conduct
The text was updated successfully, but these errors were encountered: