ephraimbuddy commented on code in PR #74789:
URL: https://github.com/apache/airflow/pull/74789#discussion_r4346881522
##########
airflow-core/src/airflow/dag_processing/manager.py:
##########
@@ -1664,7 +1801,7 @@ def prepare_file_queue(self, known_files: dict[str,
set[DagFileInfo]]):
at_run_limit_keys = {
presence_key
for presence_key, stat in file_stats_by_presence_key.items()
- if stat.run_count == self.max_runs
+ if self.max_runs != -1 and stat.run_count >= self.max_runs
Review Comment:
I agree that it predates this PR, but the new completion checks make the
`>=` guard necessary here. With `min_file_process_interval=0`, equality
filtering can keep dispatching a file whose count has already passed the limit.
The new check for active ordinary processors then prevents the manager from
exiting. Using `>=` stops that redispatch, while the `-1` exception preserves
unlimited runs. I'll keep the guard and add a lifecycle regression covering the
over-limit file and manager exit.
--
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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]