File tree 2 files changed +9
-13
lines changed
2 files changed +9
-13
lines changed Original file line number Diff line number Diff line change @@ -276,20 +276,16 @@ func (r *LazyBinaryReader) unloadIfIdleSince(ts int64) error {
276
276
return nil
277
277
}
278
278
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
-
287
279
// isIdleSince returns true if the reader is idle since given time (as unix nano).
288
280
func (r * LazyBinaryReader ) isIdleSince (ts int64 ) bool {
289
281
if r .usedAt .Load () > ts {
290
282
return false
291
283
}
292
284
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
295
291
}
Original file line number Diff line number Diff line change @@ -99,10 +99,10 @@ func (p *ReaderPool) Close() {
99
99
}
100
100
101
101
func (p * ReaderPool ) closeIdleReaders () {
102
- idleSince := time .Now ().Add (- p .lazyReaderIdleTimeout ).UnixNano ()
102
+ idleTimeoutAgo := time .Now ().Add (- p .lazyReaderIdleTimeout ).UnixNano ()
103
103
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 ) {
106
106
level .Warn (p .logger ).Log ("msg" , "failed to close idle index-header reader" , "err" , err )
107
107
}
108
108
}
You can’t perform that action at this time.
0 commit comments