Skip to content

Commit c763a62

Browse files
committed
Fix removal of persisted chunks from memory
There's an OBOB in there. According to my understanding, it would currently keep one already persisted chunk in memory and then persist it again every minute, until there's another full chunk (then the old one would finally get dropped). Indeed, looking at how many series the ingester has in memory: prism_ingester_memory_series ...and comparing that to how many chunks are being written out per minute: rate(prism_ingester_chunk_utilization_count[1h]) * 60 The number of chunks being persisted every minute is coming quite close to the number of series in memory. We should watch for a sharp drop of the latter rate after merging this.
1 parent b7fc8a1 commit c763a62

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

ingester/ingester.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -474,7 +474,7 @@ func (i *Ingester) flushSeries(ctx context.Context, u *userState, fp model.Finge
474474

475475
// now remove the chunks
476476
u.fpLocker.Lock(fp)
477-
series.chunkDescs = series.chunkDescs[len(chunks)-1:]
477+
series.chunkDescs = series.chunkDescs[len(chunks):]
478478
i.memoryChunks.Sub(float64(len(chunks)))
479479
if len(series.chunkDescs) == 0 {
480480
u.fpToSeries.del(fp)

0 commit comments

Comments
 (0)