open-webui/backend/open_webui
Classic298 223c14f48b
fix: add deterministic tiebreaker to all paginated chat queries (#22387)
Add Chat.id as a secondary sort key to all paginated chat queries
that use offset/limit pagination. When multiple chats share the same
updated_at timestamp, the database does not guarantee a stable order
across page boundaries, causing chats to appear on multiple pages.

This produces duplicate keys in the Svelte sidebar each-block
(each_key_duplicate error). Adding Chat.id as a tiebreaker ensures
fully deterministic ordering.

Extends the fix from #22383 (which addressed get_chat_ids_by_model_id)
to all remaining paginated chat queries.
2026-03-07 20:16:50 -06:00
..
data refac: mv backend files to /open_webui dir 2024-09-04 16:54:48 +02:00
internal fix: use NullPool for SQLCipher engine to prevent segfault (#22273) 2026-03-06 14:04:10 -06:00
migrations chore: format 2026-03-07 20:14:32 -06:00
models fix: add deterministic tiebreaker to all paginated chat queries (#22387) 2026-03-07 20:16:50 -06:00
retrieval fix: offline model retrieval, re-raise to disable instead of returning useless fallback (#22106) 2026-03-01 13:52:31 -05:00
routers chore: format 2026-03-07 20:14:32 -06:00
socket feat: Timeout for event_call events (#22222) 2026-03-04 16:39:53 -06:00
static refac 2025-08-10 00:02:58 +04:00
storage chore: format 2026-02-11 16:24:11 -06:00
test refac 2026-02-21 14:19:28 -06:00
tools refac 2026-03-07 18:18:02 -06:00
utils chore: format 2026-03-07 20:14:32 -06:00
__init__.py Update __init__.py 2025-04-15 09:55:35 +02:00
alembic.ini fix: Alembic CLI commands from failing 2025-08-15 04:17:47 -04:00
config.py refac 2026-03-07 20:05:18 -06:00
constants.py feat/enh: optional password validation 2025-11-20 17:44:49 -05:00
env.py refac 2026-03-06 20:12:37 -06:00
functions.py chore: format 2026-02-11 16:24:11 -06:00
main.py enh: code interpreter pyodide fs 2026-03-07 19:23:18 -06:00
tasks.py refac 2026-02-12 15:29:34 -06:00