FrankYang0529 commented on PR #72048:
URL: https://github.com/apache/airflow/pull/72048#issuecomment-5711917482

   Thanks for the review. `build_job_key()` now recognises a callback row only 
by the full identity `queue_workload()` writes for it: `dag_id == 
"ExecuteCallback"`, `run_id == "ExecuteCallback-<task_id>"`, `try_number == 0` 
and `map_index == -1`.
   
   Besides the key collision, this push fixes one more problem and add a 
changelog about this PR:
   
   1. A job can end up in a state `_purge_jobs()` never handles. 
`_update_orphaned_jobs()` copies whatever state the task instance has 
(`scheduled`, `deferred`, `up_for_reschedule`, ...) into the job row. The task 
instance row only holds the latest try, so that state can come from a later try 
than the job's. Such a job row is never reported or deleted, so with the new 
accounting it would hold a slot until the scheduler restarts. The 
reconciliation now keeps a slot only for a row that is queued or in a state 
`_purge_jobs()` handles.
   2. The changelog warning about `[core] parallelism` taking effect on Edge 
was missing from the branch.


-- 
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]

Reply via email to