chore: add SQLALCHEMY_POOL_USE_LIFO option and missing SQLALCHEMY_POOL_PRE_PING env default value. (#22371)
This commit is contained in:
@@ -162,6 +162,11 @@ class DatabaseConfig(BaseSettings):
|
|||||||
default=3600,
|
default=3600,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
SQLALCHEMY_POOL_USE_LIFO: bool = Field(
|
||||||
|
description="If True, SQLAlchemy will use last-in-first-out way to retrieve connections from pool.",
|
||||||
|
default=False,
|
||||||
|
)
|
||||||
|
|
||||||
SQLALCHEMY_POOL_PRE_PING: bool = Field(
|
SQLALCHEMY_POOL_PRE_PING: bool = Field(
|
||||||
description="If True, enables connection pool pre-ping feature to check connections.",
|
description="If True, enables connection pool pre-ping feature to check connections.",
|
||||||
default=False,
|
default=False,
|
||||||
@@ -199,6 +204,7 @@ class DatabaseConfig(BaseSettings):
|
|||||||
"pool_recycle": self.SQLALCHEMY_POOL_RECYCLE,
|
"pool_recycle": self.SQLALCHEMY_POOL_RECYCLE,
|
||||||
"pool_pre_ping": self.SQLALCHEMY_POOL_PRE_PING,
|
"pool_pre_ping": self.SQLALCHEMY_POOL_PRE_PING,
|
||||||
"connect_args": connect_args,
|
"connect_args": connect_args,
|
||||||
|
"pool_use_lifo": self.SQLALCHEMY_POOL_USE_LIFO,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@@ -88,6 +88,7 @@ def test_flask_configs(monkeypatch):
|
|||||||
"pool_pre_ping": False,
|
"pool_pre_ping": False,
|
||||||
"pool_recycle": 3600,
|
"pool_recycle": 3600,
|
||||||
"pool_size": 30,
|
"pool_size": 30,
|
||||||
|
"pool_use_lifo": False,
|
||||||
}
|
}
|
||||||
|
|
||||||
assert config["CONSOLE_WEB_URL"] == "https://example.com"
|
assert config["CONSOLE_WEB_URL"] == "https://example.com"
|
||||||
|
@@ -214,6 +214,10 @@ SQLALCHEMY_POOL_SIZE=30
|
|||||||
SQLALCHEMY_POOL_RECYCLE=3600
|
SQLALCHEMY_POOL_RECYCLE=3600
|
||||||
# Whether to print SQL, default is false.
|
# Whether to print SQL, default is false.
|
||||||
SQLALCHEMY_ECHO=false
|
SQLALCHEMY_ECHO=false
|
||||||
|
# If True, will test connections for liveness upon each checkout
|
||||||
|
SQLALCHEMY_POOL_PRE_PING=false
|
||||||
|
# Whether to enable the Last in first out option or use default FIFO queue if is false
|
||||||
|
SQLALCHEMY_POOL_USE_LIFO=false
|
||||||
|
|
||||||
# Maximum number of connections to the database
|
# Maximum number of connections to the database
|
||||||
# Default is 100
|
# Default is 100
|
||||||
|
@@ -56,6 +56,8 @@ x-shared-env: &shared-api-worker-env
|
|||||||
SQLALCHEMY_POOL_SIZE: ${SQLALCHEMY_POOL_SIZE:-30}
|
SQLALCHEMY_POOL_SIZE: ${SQLALCHEMY_POOL_SIZE:-30}
|
||||||
SQLALCHEMY_POOL_RECYCLE: ${SQLALCHEMY_POOL_RECYCLE:-3600}
|
SQLALCHEMY_POOL_RECYCLE: ${SQLALCHEMY_POOL_RECYCLE:-3600}
|
||||||
SQLALCHEMY_ECHO: ${SQLALCHEMY_ECHO:-false}
|
SQLALCHEMY_ECHO: ${SQLALCHEMY_ECHO:-false}
|
||||||
|
SQLALCHEMY_POOL_PRE_PING: ${SQLALCHEMY_POOL_PRE_PING:-false}
|
||||||
|
SQLALCHEMY_POOL_USE_LIFO: ${SQLALCHEMY_POOL_USE_LIFO:-false}
|
||||||
POSTGRES_MAX_CONNECTIONS: ${POSTGRES_MAX_CONNECTIONS:-100}
|
POSTGRES_MAX_CONNECTIONS: ${POSTGRES_MAX_CONNECTIONS:-100}
|
||||||
POSTGRES_SHARED_BUFFERS: ${POSTGRES_SHARED_BUFFERS:-128MB}
|
POSTGRES_SHARED_BUFFERS: ${POSTGRES_SHARED_BUFFERS:-128MB}
|
||||||
POSTGRES_WORK_MEM: ${POSTGRES_WORK_MEM:-4MB}
|
POSTGRES_WORK_MEM: ${POSTGRES_WORK_MEM:-4MB}
|
||||||
|
Reference in New Issue
Block a user