mirror of
https://github.com/meta-llama/llama-stack.git
synced 2025-12-11 19:56:03 +00:00
fix: disable write queue for SQLite, let WAL handle concurrency
With WAL mode enabled, SQLite can handle concurrent writes directly without locking issues. Write queues introduce async race conditions where reads happen before queued writes complete. Disable queues for SQLite and let WAL mode handle concurrency. Keep queues enabled for other backends like Postgres for performance optimization.
This commit is contained in:
parent
b74752dd54
commit
a63e0a84d3
2 changed files with 14 additions and 0 deletions
|
|
@ -48,6 +48,13 @@ class InferenceStore:
|
||||||
base_store = sqlstore_impl(self.reference)
|
base_store = sqlstore_impl(self.reference)
|
||||||
self.sql_store = AuthorizedSqlStore(base_store, self.policy)
|
self.sql_store = AuthorizedSqlStore(base_store, self.policy)
|
||||||
|
|
||||||
|
# Disable write queue for SQLite since WAL mode handles concurrency
|
||||||
|
# Keep it enabled for other backends (like Postgres) for performance
|
||||||
|
backend_config = _SQLSTORE_BACKENDS.get(self.reference.backend)
|
||||||
|
if backend_config and backend_config.type == StorageBackendType.SQL_SQLITE:
|
||||||
|
self.enable_write_queue = False
|
||||||
|
logger.debug("Write queue disabled for SQLite (WAL mode handles concurrency)")
|
||||||
|
|
||||||
await self.sql_store.create_table(
|
await self.sql_store.create_table(
|
||||||
"chat_completions",
|
"chat_completions",
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -70,6 +70,13 @@ class ResponsesStore:
|
||||||
base_store = sqlstore_impl(self.reference)
|
base_store = sqlstore_impl(self.reference)
|
||||||
self.sql_store = AuthorizedSqlStore(base_store, self.policy)
|
self.sql_store = AuthorizedSqlStore(base_store, self.policy)
|
||||||
|
|
||||||
|
# Disable write queue for SQLite since WAL mode handles concurrency
|
||||||
|
# Keep it enabled for other backends (like Postgres) for performance
|
||||||
|
backend_config = _SQLSTORE_BACKENDS.get(self.reference.backend)
|
||||||
|
if backend_config and backend_config.type == StorageBackendType.SQL_SQLITE:
|
||||||
|
self.enable_write_queue = False
|
||||||
|
logger.debug("Write queue disabled for SQLite (WAL mode handles concurrency)")
|
||||||
|
|
||||||
await self.sql_store.create_table(
|
await self.sql_store.create_table(
|
||||||
"openai_responses",
|
"openai_responses",
|
||||||
{
|
{
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue