From 4c863cc5bc3a84fea61f612b0bc90efb4e52b7c4 Mon Sep 17 00:00:00 2001 From: Daniel Salazar Date: Tue, 24 Feb 2026 15:45:46 -0800 Subject: [PATCH] fix: make invalidations more robust (#2529) --- extensions/api.d.ts | 4 ++-- src/backend/src/clients/redis/cacheUpdate.ts | 6 +++--- src/backend/src/clients/redis/deleteRedisKeys.ts | 2 +- src/backend/src/modules/apps/AppRedisCacheSpace.js | 2 +- src/backend/src/services/UserRedisCacheSpace.js | 2 +- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/extensions/api.d.ts b/extensions/api.d.ts index bcc52605f..63cc45896 100644 --- a/extensions/api.d.ts +++ b/extensions/api.d.ts @@ -169,9 +169,9 @@ interface Extension extends RouterMethods { on( name: E, - listener: (event: ExtensionEventTypeMap[E]) => void | Promise + listener: (event: ExtensionEventTypeMap[E], metadata?: { from_outside?: boolean }) => void | Promise ): void; - on(name: string, listener: (event: unknown) => void | Promise): void + on(name: string, listener: (event: T, metadata?: { from_outside?: boolean }) => void | Promise): void import(module: 'data'): { db: BaseDatabaseAccessService; diff --git a/src/backend/src/clients/redis/cacheUpdate.ts b/src/backend/src/clients/redis/cacheUpdate.ts index 3b0a138e5..072a5628a 100644 --- a/src/backend/src/clients/redis/cacheUpdate.ts +++ b/src/backend/src/clients/redis/cacheUpdate.ts @@ -72,7 +72,7 @@ const getEventService = (eventService?: CacheUpdateOptions['eventService']) => { return null; }; -export const emitOuterCacheUpdate = async ( +export const emitOuterCacheUpdate = ( { cacheKey, data, @@ -100,7 +100,7 @@ export const emitOuterCacheUpdate = async ( payload.ttlSeconds = ttlSeconds; } - await svc_event.emit('outer.cacheUpdate', payload); + svc_event.emit('outer.cacheUpdate', payload); }; export const setRedisCacheValue = async ( @@ -124,7 +124,7 @@ export const setRedisCacheValue = async ( await redisClient.set(key, value); } - await emitOuterCacheUpdate({ + emitOuterCacheUpdate({ cacheKey: [key], data: eventData === undefined ? value : eventData, ttlSeconds, diff --git a/src/backend/src/clients/redis/deleteRedisKeys.ts b/src/backend/src/clients/redis/deleteRedisKeys.ts index f858a7f76..fcbe6932c 100644 --- a/src/backend/src/clients/redis/deleteRedisKeys.ts +++ b/src/backend/src/clients/redis/deleteRedisKeys.ts @@ -72,7 +72,7 @@ export const deleteRedisKeys = async (...inputs: (DeleteRedisKeysInput | DeleteR deleted += await redisClient.del(key); } - await emitOuterCacheUpdate({ + emitOuterCacheUpdate({ cacheKey: uniqueKeys, }, { eventService: options.eventService, diff --git a/src/backend/src/modules/apps/AppRedisCacheSpace.js b/src/backend/src/modules/apps/AppRedisCacheSpace.js index 6c7f58d92..3dc8f880a 100644 --- a/src/backend/src/modules/apps/AppRedisCacheSpace.js +++ b/src/backend/src/modules/apps/AppRedisCacheSpace.js @@ -89,7 +89,7 @@ export const AppRedisCacheSpace = { .map(key => setKey(key, serialized, { ttlSeconds })); if ( writes.length ) { await Promise.all(writes); - await emitOuterCacheUpdate({ + emitOuterCacheUpdate({ cacheKey: cacheKeys, data: app, ttlSeconds, diff --git a/src/backend/src/services/UserRedisCacheSpace.js b/src/backend/src/services/UserRedisCacheSpace.js index 5a2774d1a..89dfb0fe4 100644 --- a/src/backend/src/services/UserRedisCacheSpace.js +++ b/src/backend/src/services/UserRedisCacheSpace.js @@ -69,7 +69,7 @@ const UserRedisCacheSpace = { } if ( writes.length ) { await Promise.all(writes); - await emitOuterCacheUpdate({ + emitOuterCacheUpdate({ cacheKey: cacheKeys, data: user, ttlSeconds,