Fix checking EC parent existence on Put object to shard #1548
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
4 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: TrueCloudLab/frostfs-node#1548
Loading…
Reference in a new issue
No description provided.
Delete branch "dstepanov-yadro/frostfs-node:fix/path_removed_ec"
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?
Case:
HEAD
request with EC parent object ID from node1 to node2, node2 returnsobject already removed
errorPUT
request with current node's EC chunk to adjust EC placementResult: there is only one EC chunk left in the cluster, but user can't delete it.
Fixes:
already removed
error135245f378
to169df9004d
WIP: Fix checking EC parent existance on Put object to shardto Fix checking EC parent existance on Put object to shardFix checking EC parent existance on Put object to shardto Fix checking EC parent existence on Put object to shard@ -281,6 +281,8 @@ func (p *Policer) adjustECPlacement(ctx context.Context, objInfo objectcore.Info
}
chunkIDs[ch.Index] = ecInfoChunkID
}
} else if client.IsErrObjectAlreadyRemoved(err) {
I think I've suggested similar changes for
REP
policy handling (#1543), but #1543 (comment) was said to me.@fyrchik Could you please comment?
ok, fixed
What exactly was fixed? Is seems you still introduce a new behaviour:
Sorry, the behaviour is the same, why have this commit at all?
Technically this commit relates to policer, but others relate to engine.
If the actual question is why this change, then this change if required to not to perform PUT request as we know, that object already removed and PUT request will fail anyway.
169df9004d
to9139d13f95