From 9336c01dfd7a4cc85ff427a3f5ec702d0eec8dee Mon Sep 17 00:00:00 2001 From: Erfan Besharat Date: Fri, 30 Aug 2019 13:08:36 +0430 Subject: [PATCH] Add methods to fetch page's buf data in tsdb WAL (#5967) * move the WAL page buf reset in its own func Signed-off-by: Erfan Besharat --- tsdb/wal/wal.go | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/tsdb/wal/wal.go b/tsdb/wal/wal.go index 3473043a76..6d64bb37ef 100644 --- a/tsdb/wal/wal.go +++ b/tsdb/wal/wal.go @@ -64,6 +64,14 @@ func (p *page) full() bool { return pageSize-p.alloc < recordHeaderSize } +func (p *page) reset() { + for i := range p.buf { + p.buf[i] = 0 + } + p.alloc = 0 + p.flushed = 0 +} + // Segment represents a segment file. type Segment struct { *os.File @@ -494,11 +502,7 @@ func (w *WAL) flushPage(clear bool) error { // We flushed an entire page, prepare a new one. if clear { - for i := range p.buf { - p.buf[i] = 0 - } - p.alloc = 0 - p.flushed = 0 + p.reset() w.donePages++ w.pageCompletions.Inc() }