mirror of
https://github.com/open-webui/open-webui.git
synced 2026-10-17 04:34:13 +00:00
The SQLCipher engine used a dummy sqlite:// URL with a creator function, which caused SQLAlchemy to auto-select SingletonThreadPool. This pool non-deterministically closes in-use connections when thread count exceeds pool_size (default 5), leading to use-after-free segfaults (exit code 139) in the native sqlcipher3 C library during multi-threaded operations like user signup. Now defaults to NullPool (each operation creates/closes its own connection) for maximum safety with the native C extension. Also respects the DATABASE_POOL_SIZE setting: if explicitly set >0, QueuePool is used with the configured pool parameters, matching the behavior of other DB paths. Fixes #22258 |
||
|---|---|---|
| .. | ||
| data | ||
| internal | ||
| migrations | ||
| models | ||
| retrieval | ||
| routers | ||
| socket | ||
| static | ||
| storage | ||
| test | ||
| tools | ||
| utils | ||
| __init__.py | ||
| alembic.ini | ||
| config.py | ||
| constants.py | ||
| env.py | ||
| functions.py | ||
| main.py | ||
| tasks.py | ||