-
Notifications
You must be signed in to change notification settings - Fork 189
Description
When the base branch SHA advances (either from a tide merge or a manual merge), tide starts a new batch without aborting the ProwJobs from the previous batch. The old ProwJobs are still running, but become invisible to the next sync cycle because dividePool() filters ProwJobs by baseSHA. Tide sees batchPending == 0 and triggers a fresh batch, leaving the old one to run to completion.
In the Azure/ARO-HCP case (https://prow.ci.openshift.org/tide-history?repo=Azure%2FARO-HCP), a manual merge of PR #4269, while two batches were already running, caused a third parallel batch to start.
This is straightforward to reproduce: start a batch job, manually merge any PR in the same pool, and tide will trigger another batch on the next sync without cancelling the running one.
Expected: when tide decides to trigger a new batch, any ProwJobs from a superseded batch (same org/repo/branch, different baseSHA) should be aborted.
/label area/tide
/kind bug