Skip to content

Commit f5ce68a

Browse files
committed
Addressed review comments
Signed-off-by: Marco Pracucci <[email protected]>
1 parent e94f5e1 commit f5ce68a

File tree

2 files changed

+9
-13
lines changed

2 files changed

+9
-13
lines changed

pkg/block/indexheader/lazy_binary_reader.go

+6-10
Original file line numberDiff line numberDiff line change
@@ -276,20 +276,16 @@ func (r *LazyBinaryReader) unloadIfIdleSince(ts int64) error {
276276
return nil
277277
}
278278

279-
// isLoaded returns true if the underlying index-header reader is currently loaded.
280-
func (r *LazyBinaryReader) isLoaded() bool {
281-
r.readerMx.RLock()
282-
defer r.readerMx.RUnlock()
283-
284-
return r.reader != nil
285-
}
286-
287279
// isIdleSince returns true if the reader is idle since given time (as unix nano).
288280
func (r *LazyBinaryReader) isIdleSince(ts int64) bool {
289281
if r.usedAt.Load() > ts {
290282
return false
291283
}
292284

293-
// Do not consider it idle if unloaded.
294-
return r.isLoaded()
285+
// A reader can be considered idle only if it's loaded.
286+
r.readerMx.RLock()
287+
loaded := r.reader != nil
288+
r.readerMx.RUnlock()
289+
290+
return loaded
295291
}

pkg/block/indexheader/reader_pool.go

+3-3
Original file line numberDiff line numberDiff line change
@@ -99,10 +99,10 @@ func (p *ReaderPool) Close() {
9999
}
100100

101101
func (p *ReaderPool) closeIdleReaders() {
102-
idleSince := time.Now().Add(-p.lazyReaderIdleTimeout).UnixNano()
102+
idleTimeoutAgo := time.Now().Add(-p.lazyReaderIdleTimeout).UnixNano()
103103

104-
for _, r := range p.getIdleReadersSince(idleSince) {
105-
if err := r.unloadIfIdleSince(idleSince); err != nil && !errors.Is(err, errNotIdle) {
104+
for _, r := range p.getIdleReadersSince(idleTimeoutAgo) {
105+
if err := r.unloadIfIdleSince(idleTimeoutAgo); err != nil && !errors.Is(err, errNotIdle) {
106106
level.Warn(p.logger).Log("msg", "failed to close idle index-header reader", "err", err)
107107
}
108108
}

0 commit comments

Comments
 (0)