Cancel tree sync on errors #1621
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#1621
Loading…
Add table
Reference in a new issue
No description provided.
Delete branch "fyrchik/frostfs-node:tree-sync-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?
@ -168,0 +171,4 @@
select {
case merged <- ms[minTimeMoveIndex]:
case <-ctx.Done():
return minStreamedLastHeight
If context is done, then we may get
newHeight = math.MaxUint64 + 1 -> newHeight = 0
becauseapplyOperationStream
may not return an errorhttps://git.frostfs.info/TrueCloudLab/frostfs-node/src/branch/master/pkg/services/tree/sync.go#L315-L320
So, we should compare it with
from
to properly choose the height we start from when the next sync will comeBut I think it is the behaviour, that was here before this PR, it was still possible to exit with
minStreamedLastHeight = math.MaxUint64
, no?I believe that was incorrect from the very beginning. TBH, I don't remember the task context in details. But glancing at
mergeOperationStreams
I conclude it has returnedMaxUint64
, probably, never. So, we never reachednewHeight = 0
85d23ddf2c
to89dd9660f7
alexvanin referenced this pull request2025-02-11 15:13:08 +00:00