aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorchrislu <chris.lu@gmail.com>2025-05-14 01:33:33 -0700
committerchrislu <chris.lu@gmail.com>2025-05-14 01:33:36 -0700
commitd8c574a5ef1a811f9a0d447097d9edfcc0c1d84c (patch)
tree6e981fdb852794fc511a4b763dc8a9ff4ec02280
parent0be020b0fab7419bb55fc5159dd699be56e2a605 (diff)
downloadseaweedfs-d8c574a5ef1a811f9a0d447097d9edfcc0c1d84c.tar.xz
seaweedfs-d8c574a5ef1a811f9a0d447097d9edfcc0c1d84c.zip
fix fsync logic
-rw-r--r--weed/storage/store.go2
-rw-r--r--weed/storage/volume_write.go2
2 files changed, 2 insertions, 2 deletions
diff --git a/weed/storage/store.go b/weed/storage/store.go
index b138ef457..3b2869a2e 100644
--- a/weed/storage/store.go
+++ b/weed/storage/store.go
@@ -437,7 +437,7 @@ func (s *Store) WriteVolumeNeedle(i needle.VolumeId, n *needle.Needle, checkCook
err = fmt.Errorf("volume %d is read only", i)
return
}
- _, _, isUnchanged, err = v.writeNeedle2(n, checkCookie, fsync && s.isStopping)
+ _, _, isUnchanged, err = v.writeNeedle2(n, checkCookie, fsync || s.isStopping)
return
}
glog.V(0).Infoln("volume", i, "not found!")
diff --git a/weed/storage/volume_write.go b/weed/storage/volume_write.go
index 94496cdf6..cf959b576 100644
--- a/weed/storage/volume_write.go
+++ b/weed/storage/volume_write.go
@@ -121,7 +121,7 @@ func (v *Volume) writeNeedle2(n *needle.Needle, checkCookie bool, fsync bool) (o
n.Ttl = v.Ttl
}
- if !fsync {
+ if fsync {
return v.syncWrite(n, checkCookie)
} else {
asyncRequest := needle.NewAsyncRequest(n, true)