From b645b0dc23426f1059f77c84cd424f7fdde2e91e Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Mon, 20 Apr 2026 18:47:53 +0900 Subject: [PATCH] refac --- backend/open_webui/internal/db.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/backend/open_webui/internal/db.py b/backend/open_webui/internal/db.py index d75ca11d04..d1c4060cae 100644 --- a/backend/open_webui/internal/db.py +++ b/backend/open_webui/internal/db.py @@ -232,9 +232,19 @@ get_db = contextmanager(get_session) ASYNC_SQLALCHEMY_DATABASE_URL = _make_async_url(SQLALCHEMY_DATABASE_URL) if 'sqlite' in ASYNC_SQLALCHEMY_DATABASE_URL: + # Generous default — async coroutines + no session sharing = high connection demand. + _sqlite_pool_size = ( + DATABASE_POOL_SIZE + if isinstance(DATABASE_POOL_SIZE, int) and DATABASE_POOL_SIZE > 0 + else 512 + ) async_engine = create_async_engine( ASYNC_SQLALCHEMY_DATABASE_URL, connect_args={'check_same_thread': False}, + pool_size=_sqlite_pool_size, + pool_timeout=DATABASE_POOL_TIMEOUT, + pool_recycle=DATABASE_POOL_RECYCLE, + pool_pre_ping=True, ) @event.listens_for(async_engine.sync_engine, 'connect')