Skip to content

Commit aeb15c3

Browse files
Jiayue Baofacebook-github-bot
authored andcommitted
Make the user-configured entries limit the hard upper bound
Summary: As title Reviewed By: jaesoo-fb Differential Revision: D44358110 fbshipit-source-id: d9359f25b9f6f58dd7f22cb0b45dd71b6a73848b
1 parent 206a49e commit aeb15c3

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

cachelib/experimental/objcache2/ObjectCacheSizeController-inl.h

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,9 @@ void ObjectCacheSizeController<AllocatorT>::work() {
3333
objCache_.config_.l1EntriesLimit / 100) {
3434
auto averageObjSize = totalObjSize / currentNumEntries;
3535
auto newEntriesLimit = objCache_.config_.cacheSizeLimit / averageObjSize;
36+
// entriesLimit should never exceed the configured entries limit
37+
newEntriesLimit =
38+
std::min(newEntriesLimit, objCache_.config_.l1EntriesLimit);
3639
if (newEntriesLimit < currentEntriesLimit_ &&
3740
currentNumEntries >= newEntriesLimit) {
3841
// shrink cache when getting a lower new limit and current entries num
@@ -46,7 +49,7 @@ void ObjectCacheSizeController<AllocatorT>::work() {
4649
}
4750

4851
XLOGF_EVERY_MS(INFO, 60'000,
49-
"CacheLib object-cache: total object size = {}, current "
52+
"CacheLib size-controller: total object size = {}, current "
5053
"entries = {}, average object size = "
5154
"{}, new entries limit = {}, current entries limit = {}",
5255
totalObjSize, currentNumEntries, averageObjSize,
@@ -73,7 +76,7 @@ void ObjectCacheSizeController<AllocatorT>::shrinkCacheByEntriesNum(
7376

7477
XLOGF_EVERY_MS(
7578
INFO, 60'000,
76-
"CacheLib object-cache: request to shrink cache by {} entries. "
79+
"CacheLib size-controller: request to shrink cache by {} entries. "
7780
"Placeholders num before: {}, after: {}. currentEntriesLimit: {}",
7881
entries, size, objCache_.placeholders_.size(), currentEntriesLimit_);
7982
}
@@ -92,7 +95,7 @@ void ObjectCacheSizeController<AllocatorT>::expandCacheByEntriesNum(
9295

9396
XLOGF_EVERY_MS(
9497
INFO, 60'000,
95-
"CacheLib object-cache: request to expand cache by {} entries. "
98+
"CacheLib size-controller: request to expand cache by {} entries. "
9699
"Placeholders num before: {}, after: {}. currentEntriesLimit: {}",
97100
entries, size, objCache_.placeholders_.size(), currentEntriesLimit_);
98101
}

0 commit comments

Comments
 (0)