77from sqlalchemy import event
88from sqlalchemy .engine import URL , make_url
99from sqlalchemy .ext .asyncio import AsyncEngine , AsyncSession , create_async_engine
10- from sqlalchemy .pool import AsyncAdaptedQueuePool
10+ from sqlalchemy .pool import AsyncAdaptedQueuePool , StaticPool
1111
1212from ..server .settings import DatabaseSettings , Settings , get_settings
1313from ..utils import ensure_specified_sql_driver , safe_json_dump , sanitize_uri
@@ -60,8 +60,8 @@ def open_database_connection_pool(database_settings: DatabaseSettings) -> AsyncE
6060 ensure_specified_sql_driver (database_settings .uri ),
6161 echo = DEFAULT_ECHO ,
6262 json_serializer = json_serializer ,
63+ poolclass = StaticPool ,
6364 )
64-
6565 else :
6666 engine = create_async_engine (
6767 ensure_specified_sql_driver (database_settings .uri ),
@@ -73,9 +73,9 @@ def open_database_connection_pool(database_settings: DatabaseSettings) -> AsyncE
7373 pool_pre_ping = database_settings .pool_pre_ping ,
7474 )
7575
76- # Cache the engine so we don't create more than one pool per database_settings.
77- monitor_db_pool (engine .pool , sanitize_uri (database_settings .uri )[0 ])
78- _connection_pools [database_settings ] = engine
76+ # Cache the engine so we don't create more than one pool per database_settings.
77+ monitor_db_pool (engine .pool , sanitize_uri (database_settings .uri )[0 ])
78+ _connection_pools [database_settings ] = engine
7979
8080 # For SQLite, ensure that foreign key constraints are enforced.
8181 if engine .dialect .name == "sqlite" :
0 commit comments