Raise no condition for a take-in, a layout or a put cut by a cancellation (issue 1945)
Thirty urgent fingerprint-not-composed conditions were live on 2026-10-25, each a done key's take-in a stop or a restart cut with "context canceled". A cancellation is no fault of the build, the chain or the bucket: a take-in or a layout whose controller stops returns and the next one does it; one whose own step was cancelled is tried again without a condition; a send cut by a cancellation counts as no failure to put its files. The put test now starts and leaves the node's failure count at nothing, so a second run of it (-count=2) finds no count left by the first.
This commit is contained in:
@@ -197,7 +197,9 @@ func followDoneKey(ctx context.Context, open *stores, module string) {
|
||||
if ctx.Err() != nil {
|
||||
return // stopped: a take-in cut by the stop is no fault of the build, and the next controller takes it in
|
||||
}
|
||||
if keeper := conditionsFrom; keeper != nil && !failed {
|
||||
if keeper := conditionsFrom; keeper != nil && !failed && !errors.Is(err, context.Canceled) {
|
||||
// A take-in whose own step was cancelled is tried again, and raises nothing: a cancellation is no fault
|
||||
// of the build (issue 1945: 30 urgent conditions live, each a take-in cut by a restart).
|
||||
o.Summary += err.Error()
|
||||
if _, oerr := keeper.Observe(ctx, o); oerr == nil {
|
||||
failed = true
|
||||
|
||||
Reference in New Issue
Block a user