mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2026-11-13 15:29:12 +01:00
mount: skip a link change no newer than the handle's entry
A link change carried into the handle could replace a base already moved past it by a later acknowledgment. Use the same clock-domain check as installAckedEntry. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
dff55a844c
commit
abe03ccbd3
1 file changed
+5
@@ -241,6 +241,11 @@ func (fh *FileHandle) adoptLinkChangeLocked(stored *filer_pb.Entry, versionTsNs
|
||||
if stored == nil {
|
||||
return
|
||||
}
|
||||
handleSignature := fh.entryVersionSignature.Load()
|
||||
provablyOtherClock := signature != 0 && handleSignature != 0 && signature != handleSignature
|
||||
if versionTsNs != 0 && !provablyOtherClock && versionTsNs <= fh.entryVersionTsNs.Load() {
|
||||
return
|
||||
}
|
||||
if base := fh.baseEntry.Load(); base != nil && !fh.wfs.sameApartFromLink(stored, base) {
|
||||
return
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user