Skip to content

Commit b85c445

Browse files
committed
perf: skip db writes for non-terminal status events
1 parent e1a7ad7 commit b85c445

1 file changed

Lines changed: 8 additions & 6 deletions

File tree

backend/open_webui/socket/main.py

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -797,12 +797,14 @@ async def __event_emitter__(event_data):
797797
):
798798

799799
if "type" in event_data and event_data["type"] == "status":
800-
await asyncio.to_thread(
801-
Chats.add_message_status_to_chat_by_id_and_message_id,
802-
request_info["chat_id"],
803-
request_info["message_id"],
804-
event_data.get("data", {}),
805-
)
800+
# Only persist final (done) status; intermediate ones are socket-only
801+
if event_data.get("data", {}).get("done", False):
802+
await asyncio.to_thread(
803+
Chats.add_message_status_to_chat_by_id_and_message_id,
804+
request_info["chat_id"],
805+
request_info["message_id"],
806+
event_data.get("data", {}),
807+
)
806808

807809
if "type" in event_data and event_data["type"] == "message":
808810
message = await asyncio.to_thread(

0 commit comments

Comments
 (0)