oslo.db issues 'SELECT 1' unconditionally right after a new transaction begins:
https://github.com/openstack/oslo.db/blob/master/oslo/db/sqlalchemy/session.py#L382 https://github.com/openstack/oslo.db/blob/master/oslo/db/sqlalchemy/session.py#L314-L331
which allows to detect disconnects early and reconnect to RDMBs servers transparently to the application code.
At the same time, if an RDBMs server goes away in the middle of transaction, it's left up to the consuming application to retry the whole transaction again. oslo.db provides a helper decorator for this: https://github.com/openstack/oslo.db/blob/master/oslo/db/api.py#L62-L93
oslo.db issues 'SELECT 1' unconditionally right after a new transaction begins:
https:/ /github. com/openstack/ oslo.db/ blob/master/ oslo/db/ sqlalchemy/ session. py#L382 /github. com/openstack/ oslo.db/ blob/master/ oslo/db/ sqlalchemy/ session. py#L314- L331
https:/
which allows to detect disconnects early and reconnect to RDMBs servers transparently to the application code.
At the same time, if an RDBMs server goes away in the middle of transaction, it's left up to the consuming application to retry the whole transaction again. oslo.db provides a helper decorator for this: https:/ /github. com/openstack/ oslo.db/ blob/master/ oslo/db/ api.py# L62-L93