Make PostgreSQL statement_cache_size configuration optional

• Remove forced int conversion
• Allow None values for cache size
• Add conditional parameter setting
This commit is contained in:
yangdx 2025-10-07 22:57:21 +08:00
parent fdcb034da0
commit f2c0b41e78

View file

@ -77,8 +77,8 @@ class PostgreSQLDB:
# Server settings
self.server_settings = config.get("server_settings")
# Statement LRU cache size
self.statement_cache_size = int(config.get("statement_cache_size"))
# Statement LRU cache size (keep as-is, allow None for optional configuration)
self.statement_cache_size = config.get("statement_cache_size")
if self.user is None or self.password is None or self.database is None:
raise ValueError("Missing database user, password, or database")
@ -164,12 +164,16 @@ class PostgreSQLDB:
"port": self.port,
"min_size": 1,
"max_size": self.max,
"statement_cache_size": self.statement_cache_size,
}
logger.info(
f"PostgreSQL, statement LRU cache size set as: {self.statement_cache_size}"
)
# Only add statement_cache_size if it's configured
if self.statement_cache_size is not None:
connection_params["statement_cache_size"] = int(
self.statement_cache_size
)
logger.info(
f"PostgreSQL, statement LRU cache size set as: {self.statement_cache_size}"
)
# Add SSL configuration if provided
ssl_context = self._create_ssl_context()