Commit Graph

3496 Commits

Author SHA1 Message Date
Timothy Jaeryang Baek
a4281f6a7f refac: ldap 2026-02-11 18:25:37 -06:00
Timothy Jaeryang Baek
2372b70031 refac: async pipelines requests 2026-02-11 18:24:30 -06:00
Classic298
d02e826c9d Fix idle in transaction leaks in Open WebUI (#20868)
* fix: add ScopedSession.remove() to prevent idle transaction leaks

The HTTP middleware was calling ScopedSession.commit() but not
ScopedSession.remove(), causing database connections to remain
"checked out" from the pool indefinitely. This resulted in
"idle in transaction" connections in PostgreSQL that could persist
for 30-50+ minutes.

With SQLAlchemy's scoped_session:
- commit() commits but keeps the session active
- remove() is required to return the connection to the pool

This fix adds the missing remove() call, ensuring connections are
properly returned after each HTTP request.

Also includes IDLE_TRANSACTION_ANALYSIS.md documenting the full
root cause analysis and additional recommendations.

* Delete IDLE_TRANSACTION_ANALYSIS.md

---------

Co-authored-by: Claude <noreply@anthropic.com>
2026-02-11 18:20:03 -06:00
Timothy Jaeryang Baek
dddac2b0ca refac
Co-Authored-By: Classic298 <27028174+Classic298@users.noreply.github.com>
2026-02-11 18:19:01 -06:00
Timothy Jaeryang Baek
0da57149ae refac
Co-Authored-By: Classic298 <27028174+Classic298@users.noreply.github.com>
2026-02-11 18:13:30 -06:00
Thomas Rehn
390d7663b0 fix: don't pollute model text context with encoded images (#20916) 2026-02-11 18:10:22 -06:00
Thomas Rehn
ce3a615442 perf: cache OpenAI config reads to avoid redundant Redis lookups in /api/models (#21306)
Each access to request.app.state.config.<KEY> triggers a synchronous
Redis GET. In get_all_models_responses() and get_merged_models(), the
config keys OPENAI_API_BASE_URLS, OPENAI_API_KEYS, and
OPENAI_API_CONFIGS were read on every loop iteration — resulting
in some cases in 200-300 Redis round-trips for OPENAI_API_BASE_URLS alone.

Read each config value once into a local variable at the start of the
function and reuse it throughout.
2026-02-11 17:59:50 -06:00
Timothy Jaeryang Baek
4e0cb88583 refac: audio timeout
Co-Authored-By: Jannik S. <jannik@streidl.dev>
2026-02-11 17:56:49 -06:00
Timothy Jaeryang Baek
9b30e8f689 refac 2026-02-11 17:53:01 -06:00
Timothy Jaeryang Baek
96c07f44a8 refac 2026-02-11 16:45:47 -06:00
Timothy Jaeryang Baek
60ada21c15 refac 2026-02-11 16:40:40 -06:00
Classic298
ab20745ee5 Enable Rich UI embed support for action functions (#21294)
Action functions can now return HTMLResponse objects or (html, headers)
tuples with Content-Disposition: inline to render rich UI iframes in
chat, matching the existing tool behavior.

https://claude.ai/code/session_01KCZKQXj1uqgPjqjMd4U2NF

Co-authored-by: Claude <noreply@anthropic.com>
2026-02-11 16:27:00 -06:00
Timothy Jaeryang Baek
f376d4f378 chore: format 2026-02-11 16:24:11 -06:00
Timothy Jaeryang Baek
773787c74c refac 2026-02-11 16:16:41 -06:00
Timothy Jaeryang Baek
e5035ea31e refac 2026-02-11 15:55:23 -06:00
Timothy Jaeryang Baek
c8cbdc8f7f refac 2026-02-11 15:24:12 -06:00
Timothy Jaeryang Baek
64c37ab968 refac 2026-02-11 15:12:37 -06:00
Timothy Jaeryang Baek
27944cf7ca refac 2026-02-11 14:26:56 -06:00
Timothy Jaeryang Baek
a38ad8fc42 refac 2026-02-11 14:09:55 -06:00
Timothy Jaeryang Baek
c2207887b3 feat: skills backend 2026-02-11 14:00:34 -06:00
Timothy Jaeryang Baek
3fabc085cc feat: skills migration 2026-02-11 03:58:28 -06:00
Timothy Jaeryang Baek
3e56261c5e refac 2026-02-11 02:06:43 -06:00
Timothy Jaeryang Baek
30f72672fa refac 2026-02-10 15:57:08 -06:00
Timothy Jaeryang Baek
4aedfdc547 refac 2026-02-10 15:47:21 -06:00
Timothy Jaeryang Baek
e3a8257690 refac 2026-02-10 15:41:11 -06:00
Timothy Jaeryang Baek
a73cdf4288 refac: dmr fallback for ollama 2026-02-10 15:38:21 -06:00
Timothy Jaeryang Baek
c259c87806 refac 2026-02-10 15:30:16 -06:00
Timothy Jaeryang Baek
cd31b8301b refac 2026-02-10 12:44:31 -06:00
Timothy Jaeryang Baek
8fd5c06e5b refac 2026-02-10 12:23:08 -06:00
Classic298
f236192fe1 fix: resolve N+1 query in knowledge batch file add (#21006) 2026-02-09 16:17:30 -06:00
Varun Chawla
9b1fd86aa7 fix: use keyword argument for IndicesClient.refresh() for opensearch-py 3.x (#21248)
In opensearch-py >= 3.0.0, IndicesClient.refresh() no longer accepts the
index name as a positional argument. This causes a TypeError when
uploading documents to knowledge bases with OpenSearch backend.

Changes positional arguments to keyword arguments (index=...) in all
three refresh() calls in the OpenSearch vector DB client.

Fixes #20649
2026-02-09 16:16:44 -06:00
Timothy Jaeryang Baek
c2f5cb542e refac 2026-02-09 14:03:35 -06:00
Tim Baek
48a0abb40f Merge pull request #21277 from open-webui/acl
refac: acl
2026-02-09 13:34:36 -06:00
Timothy Jaeryang Baek
68c77295bd refac 2026-02-09 13:31:59 -06:00
Timothy Jaeryang Baek
f7406ff576 refac 2026-02-09 13:28:14 -06:00
Tim Baek
e2d09ac361 refac 2026-02-09 09:06:48 +04:00
Timothy Jaeryang Baek
3ae44d11a5 refac 2026-02-08 22:37:13 -06:00
Tim Baek
aa8c2959ca refac 2026-02-09 08:07:33 +04:00
Timothy Jaeryang Baek
b147616080 refac 2026-02-08 21:32:12 -06:00
Timothy Jaeryang Baek
9747b07ca5 refac 2026-02-08 21:24:38 -06:00
Timothy Jaeryang Baek
0f78451c2b refac 2026-02-08 21:24:20 -06:00
Timothy Jaeryang Baek
42763cbbd8 enh: access grants table 2026-02-08 21:21:25 -06:00
Timothy Jaeryang Baek
d193c143a5 refac 2026-02-08 21:18:38 -06:00
Tim Baek
4852227158 refac 2026-02-08 06:22:56 +04:00
Timothy Jaeryang Baek
9be85b6d3c refac: access control migration 2026-02-07 19:07:49 -06:00
Classic298
494cf8b3ef fix (#21226) 2026-02-08 03:19:26 +04:00
Tim Baek
7e79f8d1c6 refac 2026-02-06 22:39:20 +04:00
Tim Baek
258454276e fix: files settings save issue 2026-02-06 22:33:49 +04:00
Tim Baek
b1737040a7 refac 2026-02-06 22:25:18 +04:00
Tim Baek
a214ec40ea fix 2026-02-06 03:34:21 +04:00