Skip to content

Commit c53e849

Browse files
authored
Merge pull request #226 from ecmwf-projects/COPDS-2241-broker-connection-parameters
Define broker db connection parameters in settings
2 parents c76f6e6 + dd8a1d9 commit c53e849

File tree

2 files changed

+13
-4
lines changed

2 files changed

+13
-4
lines changed

cads_processing_api_service/config.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -197,6 +197,11 @@ def profiles_api_url(self) -> str:
197197
missing_licences_message: str = MISSING_LICENCES_MESSAGE
198198
dataset_licences_url: str = DATASET_LICENCES_URL
199199

200+
retrieve_api_broker_pool_timeout: float = 1.0
201+
retrieve_api_broker_pool_recycle: int = 60
202+
retrieve_api_broker_pool_size: int = 5
203+
retrieve_api_broker_max_overflow: int = 15
204+
200205
rate_limits_file: str | None = None
201206
rate_limits: RateLimitsConfig = pydantic.Field(default=RateLimitsConfig())
202207

cads_processing_api_service/db_utils.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,10 @@
2222
import sqlalchemy
2323
import sqlalchemy.orm
2424

25+
from . import config
26+
27+
SETTINGS = config.settings
28+
2529

2630
class ConnectionMode(str, enum.Enum):
2731
"""Database connection mode."""
@@ -56,10 +60,10 @@ def get_compute_sessionmaker(
5660
raise ValueError(f"Invalid connection mode: {str(mode)}")
5761
broker_engine = sqlalchemy.create_engine(
5862
connection_string,
59-
pool_timeout=broker_settings.broker_pool_timeout,
60-
pool_recycle=broker_settings.broker_pool_recycle,
61-
pool_size=broker_settings.broker_pool_size,
62-
max_overflow=broker_settings.broker_max_overflow,
63+
pool_timeout=SETTINGS.retrieve_api_broker_pool_timeout,
64+
pool_recycle=SETTINGS.retrieve_api_broker_pool_recycle,
65+
pool_size=SETTINGS.retrieve_api_broker_pool_size,
66+
max_overflow=SETTINGS.retrieve_api_broker_max_overflow,
6367
)
6468
return sqlalchemy.orm.sessionmaker(broker_engine)
6569

0 commit comments

Comments
 (0)