Do not change shard mode to DEGRADED_READ_ONLY
in case of no space left
from blobovnicza #1166
1 changed files with 4 additions and 1 deletions
|
@ -2,6 +2,7 @@ package blobovniczatree
|
|||
|
||||
import (
|
||||
"context"
|
||||
"errors"
|
||||
"path/filepath"
|
||||
"time"
|
||||
|
||||
|
@ -108,7 +109,9 @@ func (i *putIterator) iterate(ctx context.Context, lvlPath string) (bool, error)
|
|||
zap.String("error", err.Error()),
|
||||
zap.String("trace_id", tracingPkg.GetTraceID(ctx)))
|
||||
}
|
||||
|
||||
if errors.Is(err, blobovnicza.ErrNoSpace) {
|
||||
i.AllFull = true
|
||||
|
||||
}
|
||||
return false, nil
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue
Again, do we exit if we received this error from at least 1 blobovnicza? Until we have vacuum I think it is not worth having this optimization, as others blobovniczas may still have free pages.
No, blobstor will try all databases:
I don't understand, why do we need this change in this PR? Is something wrong without it?
Without this change blobovnicza tree will return non logical error:
return common.PutRes{}, errPutFailed
So shard will increase error counter.
Hm, but why
iterateDeepest
return non-nil error?By design.