From: Augustin Prolongeau Date: Thu, 6 Feb 2025 23:18:57 +0000 (+0100) Subject: doc(reconecting_engine): fix re-raise after attempts (#12306) X-Git-Tag: rel_2_0_39~26 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=701eef33388d2eeb139a6ece3558c4fc9e4d7d6a;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git doc(reconecting_engine): fix re-raise after attempts (#12306) * doc(reconecting_engine): fix re-raise after attempts * move re-raise after connection invalidation/rollback, reword log message (cherry picked from commit 47dab9181c86e6a944411470885f6fe18a1fc15f) --- diff --git a/doc/build/faq/connections.rst b/doc/build/faq/connections.rst index d93a4b1af7..1f3bf1ba14 100644 --- a/doc/build/faq/connections.rst +++ b/doc/build/faq/connections.rst @@ -259,10 +259,10 @@ statement executions:: except engine.dialect.dbapi.Error as raw_dbapi_err: connection = context.root_connection if engine.dialect.is_disconnect(raw_dbapi_err, connection, cursor_obj): - if retry > num_retries: - raise engine.logger.error( - "disconnection error, retrying operation", + "disconnection error, attempt %d/%d", + retry + 1, + num_retries + 1, exc_info=True, ) connection.invalidate() @@ -275,6 +275,9 @@ statement executions:: if trans: trans.rollback() + if retry == num_retries: + raise + time.sleep(retry_interval) context.cursor = cursor_obj = connection.connection.cursor() else: