From baef422a2854b64461fb7953e2bf5ac8f99c578c Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Thu, 29 Jan 2026 18:45:09 +0100 Subject: [PATCH] perf: eliminate redundant query after memory update (#21013) ## Summary Eliminates redundant database query in update_memory_by_id_and_user_id. Previously, after modifying the memory object, it called get_memory_by_id which opened a new session and queried again. ## Changes models/memories.py update_memory_by_id_and_user_id: - Replace self.get_memory_by_id(id) with db.refresh(memory) - Return the same memory object that was already modified ## Performance Impact Before: 2 queries (get + get_memory_by_id) After: 1 query + refresh on same session --- backend/open_webui/models/memories.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/backend/open_webui/models/memories.py b/backend/open_webui/models/memories.py index 2dc9656856..e6b70a3020 100644 --- a/backend/open_webui/models/memories.py +++ b/backend/open_webui/models/memories.py @@ -82,7 +82,8 @@ class MemoriesTable: memory.updated_at = int(time.time()) db.commit() - return self.get_memory_by_id(id) + db.refresh(memory) + return MemoryModel.model_validate(memory) except Exception: return None