aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Lu <chrislusf@users.noreply.github.com>2016-07-24 22:23:13 -0700
committerGitHub <noreply@github.com>2016-07-24 22:23:13 -0700
commit0ba3f47e31f7b5f6ed196a8cdd8f795d114d9241 (patch)
treeb1e98cb29cc6011947e6876110cf904d47685c78
parent185a916f5eae022b89cc310d895fd93cac2fa3eb (diff)
parent78678f4bcb7aa6b18cd364f86135b54e2d633f24 (diff)
downloadseaweedfs-0ba3f47e31f7b5f6ed196a8cdd8f795d114d9241.tar.xz
seaweedfs-0ba3f47e31f7b5f6ed196a8cdd8f795d114d9241.zip
Merge pull request #346 from hxiaodon/master
deleted needle does not need checksum verification
-rw-r--r--weed/storage/needle_read_write.go3
1 files changed, 3 insertions, 0 deletions
diff --git a/weed/storage/needle_read_write.go b/weed/storage/needle_read_write.go
index 2f26147d6..3ac236951 100644
--- a/weed/storage/needle_read_write.go
+++ b/weed/storage/needle_read_write.go
@@ -158,6 +158,9 @@ func (n *Needle) ReadData(r *os.File, offset int64, size uint32, version Version
case Version2:
n.readNeedleDataVersion2(bytes[NeedleHeaderSize : NeedleHeaderSize+int(n.Size)])
}
+ if size == 0 {
+ return nil
+ }
checksum := util.BytesToUint32(bytes[NeedleHeaderSize+size : NeedleHeaderSize+size+NeedleChecksumSize])
newChecksum := NewCRC(n.Data)
if checksum != newChecksum.Value() {