diff --git a/packages/backend-defaults/src/entrypoints/userInfo/CachedUserInfoService.ts b/packages/backend-defaults/src/entrypoints/userInfo/CachedUserInfoService.ts index 41d7480341..7d26e3af70 100644 --- a/packages/backend-defaults/src/entrypoints/userInfo/CachedUserInfoService.ts +++ b/packages/backend-defaults/src/entrypoints/userInfo/CachedUserInfoService.ts @@ -58,14 +58,6 @@ export class CachedUserInfoService implements UserInfoService { const now = Date.now(); - const cached = this.#entries.get(token); - if (cached) { - if (cached.expiresAt > now) { - return cached.promise; - } - this.#entries.delete(token); - } - if (now - this.#lastSweep > SWEEP_INTERVAL_MS) { this.#lastSweep = now; for (const [key, entry] of this.#entries) { @@ -75,6 +67,11 @@ export class CachedUserInfoService implements UserInfoService { } } + const cached = this.#entries.get(token); + if (cached && cached.expiresAt > now) { + return cached.promise; + } + const promise = this.#delegate.getUserInfo(credentials).catch(error => { this.#entries.delete(token); throw error;