Gollum999 commented on issue #27399:
URL: https://github.com/apache/airflow/issues/27399#issuecomment-1411036858

   For what it's worth, prior to 2.4 I wrote my own timetable that acts almost 
exactly like `CronTriggerTimetable`, and I experienced a similar issue, so I'll 
mention my findings here.
   
   In my case the problem was that there was a race condition between the 
DagProcessor and the Scheduler when calling `Timetable.next_dagrun_info`. 
Depending on when each thread evaluated the timetable, the DagProcessor could 
end up "bumping" the DAG's `next_dagrun_create_after` timestamp in the DB 
before the Scheduler had a chance to schedule the current interval.  Then when 
the Scheduler would do it's query to determine which DagRuns to schedule, it 
wouldn't find the run that got "skipped".  In my case, I believe the bug was a 
call to `DateTime.utcnow()` that I had to align to the previous interval 
boundary.
   
   Also worth noting that my bug only happened with `catchup=False`, but that 
could have just been a quirk with my implementation.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscr...@airflow.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to