diff options
| author | Konstantin Lebedev <lebedev_k@tochka.com> | 2021-06-02 17:07:19 +0500 |
|---|---|---|
| committer | Konstantin Lebedev <lebedev_k@tochka.com> | 2021-06-02 17:07:19 +0500 |
| commit | 99ef280c7c8ceb2c063d721e4c1013f99999b5c2 (patch) | |
| tree | 415997276d527452a6df6b5152ea10417b7d3b0d /weed/storage/volume.go | |
| parent | 3db1642392580ebfb23fa71791eaa33a04a2047f (diff) | |
| download | seaweedfs-99ef280c7c8ceb2c063d721e4c1013f99999b5c2.tar.xz seaweedfs-99ef280c7c8ceb2c063d721e4c1013f99999b5c2.zip | |
avoid data loss after restarting a container with a volum server
Diffstat (limited to 'weed/storage/volume.go')
| -rw-r--r-- | weed/storage/volume.go | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/weed/storage/volume.go b/weed/storage/volume.go index e0638d8a8..c6bf3e329 100644 --- a/weed/storage/volume.go +++ b/weed/storage/volume.go @@ -180,10 +180,16 @@ func (v *Volume) Close() { v.dataFileAccessLock.Lock() defer v.dataFileAccessLock.Unlock() if v.nm != nil { + if err := v.nm.Sync(); err != nil { + glog.Warningf("Volume Close fail to sync volume idx %d", v.Id) + } v.nm.Close() v.nm = nil } if v.DataBackend != nil { + if err := v.DataBackend.Sync(); err != nil { + glog.Warningf("Volume Close fail to sync volume %d", v.Id) + } _ = v.DataBackend.Close() v.DataBackend = nil stats.VolumeServerVolumeCounter.WithLabelValues(v.Collection, "volume").Dec() |
