diff options
| author | Chris Lu <chris.lu@gmail.com> | 2019-04-15 21:58:43 -0700 |
|---|---|---|
| committer | Chris Lu <chris.lu@gmail.com> | 2019-04-15 21:58:43 -0700 |
| commit | f567777d6464efdb0000eac527755a15a589930c (patch) | |
| tree | 25744fc60e1d77c413d9f5a7c7ae89b8f9ebd1d6 | |
| parent | bd76ad0ff1d1bb81cb77cb3417968d3b496380b4 (diff) | |
| download | seaweedfs-f567777d6464efdb0000eac527755a15a589930c.tar.xz seaweedfs-f567777d6464efdb0000eac527755a15a589930c.zip | |
volume: fix needle checking for deleted needles
| -rw-r--r-- | weed/storage/volume_read_write.go | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/weed/storage/volume_read_write.go b/weed/storage/volume_read_write.go index 93f4ed1c1..363835eb9 100644 --- a/weed/storage/volume_read_write.go +++ b/weed/storage/volume_read_write.go @@ -21,11 +21,11 @@ func (v *Volume) isFileUnchanged(n *Needle) bool { return false } nv, ok := v.nm.Get(n.Id) - if ok && !nv.Offset.IsZero() { + if ok && !nv.Offset.IsZero() && nv.Size != TombstoneFileSize { oldNeedle := new(Needle) err := oldNeedle.ReadData(v.dataFile, nv.Offset.ToAcutalOffset(), nv.Size, v.Version()) if err != nil { - glog.V(0).Infof("Failed to check updated file %v", err) + glog.V(0).Infof("Failed to check updated file at offset %d size %d: %v", nv.Offset.ToAcutalOffset(), nv.Size, err) return false } if oldNeedle.Checksum == n.Checksum && bytes.Equal(oldNeedle.Data, n.Data) { |
