aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Lu <chris.lu@gmail.com>2019-01-26 00:05:44 -0600
committerChris Lu <chris.lu@gmail.com>2019-01-26 00:05:44 -0600
commit5668ed798dc2b2c6c0c88a6615ab4d5360024f10 (patch)
tree458fff5c3d188f2a5c47ad12869ab6f7bab55497
parentd3f675abc6829876b1804150e00db43c5d310e14 (diff)
downloadseaweedfs-5668ed798dc2b2c6c0c88a6615ab4d5360024f10.tar.xz
seaweedfs-5668ed798dc2b2c6c0c88a6615ab4d5360024f10.zip
memory needle map mark size to be TombstoneFileSize
fix https://github.com/chrislusf/seaweedfs/issues/850
-rw-r--r--weed/storage/needle/compact_map.go4
1 files changed, 2 insertions, 2 deletions
diff --git a/weed/storage/needle/compact_map.go b/weed/storage/needle/compact_map.go
index 4816e0098..bca698407 100644
--- a/weed/storage/needle/compact_map.go
+++ b/weed/storage/needle/compact_map.go
@@ -76,9 +76,9 @@ func (cs *CompactSection) Delete(key NeedleId) uint32 {
cs.Lock()
ret := uint32(0)
if i := cs.binarySearchValues(skey); i >= 0 {
- if cs.values[i].Size > 0 {
+ if cs.values[i].Size > 0 && cs.values[i].Size != TombstoneFileSize {
ret = cs.values[i].Size
- cs.values[i].Size = 0
+ cs.values[i].Size = TombstoneFileSize
}
}
if v, found := cs.overflow.findOverflowEntry(skey); found {