diff --git a/src/memory/manager.ts b/src/memory/manager.ts index 436e1362395..d2ba715ca19 100644 --- a/src/memory/manager.ts +++ b/src/memory/manager.ts @@ -42,6 +42,13 @@ const log = createSubsystemLogger("memory"); const INDEX_CACHE = new Map(); const INDEX_CACHE_PENDING = new Map>(); +export async function closeAllMemoryIndexManagers(): Promise { + const managers = Array.from(INDEX_CACHE.values()); + INDEX_CACHE.clear(); + INDEX_CACHE_PENDING.clear(); + await Promise.allSettled(managers.map(async (manager) => await manager.close())); +} + export class MemoryIndexManager extends MemoryManagerEmbeddingOps implements MemorySearchManager { private readonly cacheKey: string; protected readonly cfg: OpenClawConfig;