A merge planned without looking at open plans, so two plans worked the same modules and a stuck plan stayed open for ever. The newer plan folds in what older plans of the same repository and branch had not built or sent, and closes them as superseded. A person can close a stuck plan by id with `plans close <id>`.
15 lines
1.0 KiB
SQL
15 lines
1.0 KiB
SQL
-- A newer plan supersedes the older open plans of the same repository and branch (novox/hq issue 254,
|
|
-- ADR 0218).
|
|
--
|
|
-- A merge produced a plan without looking at the plans still open, so two merges a few minutes apart
|
|
-- were two plans working the same modules, and a plan stuck waiting on something that would never
|
|
-- come stayed open for ever beside the newer ones. The newer plan now takes over what the older had
|
|
-- not yet built and the older is closed as `superseded` — a state of its own, so `plans` can say
|
|
-- which plan replaced it rather than reading as a failure.
|
|
--
|
|
-- `branch` is the branch the merge went into, so only a plan of the same branch is superseded. Empty
|
|
-- for every plan from before this was kept: which branch it answered is not known, and such a plan
|
|
-- is superseded by the next plan of its repository, whichever branch — nothing is lost by it, since
|
|
-- what it had not built is folded into the plan that supersedes it.
|
|
alter table release_plan add column branch text not null default '';
|