engine: Do not increase error counter on meta mismatch #686
No reviewers
Labels
No labels
P0
P1
P2
P3
badger
frostfs-adm
frostfs-cli
frostfs-ir
frostfs-lens
frostfs-node
good first issue
triage
Infrastructure
blocked
bug
config
discussion
documentation
duplicate
enhancement
go
help wanted
internal
invalid
kludge
observability
perfomance
question
refactoring
wontfix
No milestone
No project
No assignees
3 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: TrueCloudLab/frostfs-node#686
Loading…
Reference in a new issue
No description provided.
Delete branch "fyrchik/frostfs-node:fix-logic-error"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Close #679
It was introduced in
69e1e6ca
to help node determine faulty shards.However, the situation is possible in a real-life scenario:
have it in meta on shard B too, but we still got the error if B goes
to a degraded mode.
Signed-off-by: Evgenii Stratonikov e.stratonikov@yadro.com
3eebc31e01
to3fff6af7e1
@ -103,3 +104,1 @@
if it.ShardWithMeta.Shard != nil {
e.reportShardError(it.ShardWithMeta, "meta info was present, but object is missing",
it.MetaError, zap.Stringer("address", prm.addr))
if it.ShardWithMeta.Shard != nil && it.MetaError != nil {
Okay. AFAICS this is needed to make sure we are in the situation when
A
has not been unmounted yet and still has the meta.I am curios about the situation when
B
is in the degraded mode and the error is returned.I only see
if !it.HasDegraded && it.ShardWithMeta.Shard == nil
check above. Can you explain, please, how do we process the error when it is B and it is the degtaded mode?Could you refrase a bit? We always return an object if it can be found, but now we just don't increase error counter.
3fff6af7e1
toc6af4a3ec8