fix: export prometheus metrics for cache GC triggers (#9815)

Bonus change to use channel to serialize triggers,
instead of using atomic variables. More efficient
mechanism for synchronization.
This commit is contained in:
Harshavardhana
2020-06-15 09:05:35 -07:00
parent a1e6a3ef64
commit 49c8d36497
7 changed files with 134 additions and 60 deletions
+8
View File
@@ -404,6 +404,14 @@ func (f *fileScorer) trimQueue() {
}
}
func (f *fileScorer) purgeFunc(p func(qfile queuedFile)) {
e := f.queue.Front()
for e != nil {
p(e.Value.(queuedFile))
e = e.Next()
}
}
// fileNames returns all queued file names.
func (f *fileScorer) fileNames() []string {
res := make([]string, 0, f.queue.Len())