patroni.postgresql.connection module
- class patroni.postgresql.connection.ConnectionPool
Bases:
object
Helper class to manage named connections from Patroni to PostgreSQL.
The instance keeps named
NamedConnection
objects and parameters that must be used for new connections.- __init__() None
Create an instance of
ConnectionPool
class.
- property conn_kwargs: Dict[str, Any]
Connection parameters that must be used for new
psycopg
connections.
- get(name: str, kwargs_override: Dict[str, Any] | None = None) NamedConnection
Get a new named
NamedConnection
object from the pool.Note
Creates a new
NamedConnection
object if it doesn’t yet exist in the pool.- Parameters:
name – name of the connection.
kwargs_override –
dict
object with connection parameters that should be different from default values provided byconn_kwargs
.
- Returns:
NamedConnection
object.
- class patroni.postgresql.connection.NamedConnection(pool: ConnectionPool, name: str, kwargs_override: Dict[str, Any] | None)
Bases:
object
Helper class to manage
psycopg
connections from Patroni to PostgreSQL.- Variables:
server_version – PostgreSQL version in integer format where we are connected to.
- __init__(pool: ConnectionPool, name: str, kwargs_override: Dict[str, Any] | None) None
Create an instance of
NamedConnection
class.- Parameters:
pool – reference to a
ConnectionPool
object.name – name of the connection.
kwargs_override –
dict
object with connection parameters that should be different from default values provided by connection pool.
- property _conn_kwargs: Dict[str, Any]
Connection parameters for this
NamedConnection
.
- close(silent: bool = False) bool
Close the psycopg connection to postgres.
- Parameters:
silent – whether the method should not write logs.
- Returns:
True
ifpsycopg
connection was closed,False
otherwise.``
- get() connection | Connection[Any]
Get
psycopg
/psycopg2
connection object.Note
Opens a new connection if necessary.
- Returns:
psycopg
orpsycopg2
connection object.
- query(sql: str, *params: Any) List[Tuple[Any, ...]]
Execute a query with parameters and optionally returns a response.
- Parameters:
sql – SQL statement to execute.
params – parameters to pass.
- Returns:
a query response as a list of tuples if there is any.
- Raises:
Error
if had issues while executing sql.PostgresConnectionException
: if had issues while connecting to the database.