aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorchrislu <chris.lu@gmail.com>2022-01-15 14:30:18 -0800
committerchrislu <chris.lu@gmail.com>2022-01-15 14:30:18 -0800
commitfcf5b6cc93e2fc004ab63a814c0f924b44da6987 (patch)
tree82bcb9619cdb6d1a974bfa224c229fc040781802
parent1dc25218cdf59f26854c1610b51381269c372117 (diff)
downloadseaweedfs-fcf5b6cc93e2fc004ab63a814c0f924b44da6987.tar.xz
seaweedfs-fcf5b6cc93e2fc004ab63a814c0f924b44da6987.zip
delete only when not used
-rw-r--r--weed/filesys/page_writer/chunked_stream_writer.go2
1 files changed, 1 insertions, 1 deletions
diff --git a/weed/filesys/page_writer/chunked_stream_writer.go b/weed/filesys/page_writer/chunked_stream_writer.go
index be5f7ad2d..4bc49765b 100644
--- a/weed/filesys/page_writer/chunked_stream_writer.go
+++ b/weed/filesys/page_writer/chunked_stream_writer.go
@@ -100,10 +100,10 @@ func (cw *ChunkedStreamWriter) saveOneChunk(memChunk *MemChunk, logicChunkIndex
for t := memChunk.usage.head.next; t != memChunk.usage.tail; t = t.next {
reader := util.NewBytesReader(memChunk.buf[t.StartOffset:t.stopOffset])
cw.saveToStorageFn(reader, int64(logicChunkIndex)*cw.ChunkSize+t.StartOffset, t.Size(), func() {
- delete(cw.activeChunks, logicChunkIndex)
atomic.AddInt32(&referenceCounter, -1)
if atomic.LoadInt32(&referenceCounter) == 0 {
mem.Free(memChunk.buf)
+ delete(cw.activeChunks, logicChunkIndex)
}
})
}