mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-09 22:04:30 +00:00
fix: use iterator.done check for LRU eviction
Fixes edge case where empty string key would stop eviction early
This commit is contained in:
@@ -69,11 +69,11 @@ function setCachedThreadStarter(key: string, value: DiscordThreadStarter, now: n
|
|||||||
DISCORD_THREAD_STARTER_CACHE.set(key, { value, updatedAt: now });
|
DISCORD_THREAD_STARTER_CACHE.set(key, { value, updatedAt: now });
|
||||||
// Evict oldest entries (first in Map) when over max size
|
// Evict oldest entries (first in Map) when over max size
|
||||||
while (DISCORD_THREAD_STARTER_CACHE.size > DISCORD_THREAD_STARTER_CACHE_MAX) {
|
while (DISCORD_THREAD_STARTER_CACHE.size > DISCORD_THREAD_STARTER_CACHE_MAX) {
|
||||||
const oldestKey = DISCORD_THREAD_STARTER_CACHE.keys().next().value;
|
const iter = DISCORD_THREAD_STARTER_CACHE.keys().next();
|
||||||
if (!oldestKey) {
|
if (iter.done) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
DISCORD_THREAD_STARTER_CACHE.delete(oldestKey);
|
DISCORD_THREAD_STARTER_CACHE.delete(iter.value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user