summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/engine
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2021-08-20 11:47:26 -0400
committerMike Bayer <mike_mp@zzzcomputing.com>2021-08-20 22:17:55 -0400
commitf9ba830ec059f3a4b095c36f94fe7ae29ba7aac2 (patch)
tree706c1f1cd452bda85a56c2d8b9a8b1d4d23da11c /lib/sqlalchemy/engine
parent5c4a74fc13ca28983706a76ab02ffe09d89d1dbf (diff)
downloadsqlalchemy-f9ba830ec059f3a4b095c36f94fe7ae29ba7aac2.tar.gz
restore statement substitution to before_execute()
Fixed issue where the ability of the :meth:`_engine.ConnectionEvents.before_execute` method to alter the SQL statement object passed, returning the new object to be invoked, was inadvertently removed. This behavior has been restored. The refactor in a1939719a652774a437f69f8d4788b3f08650089 removed this feature for some reason and there were no tests in place to detect it. I don't see any indication this was planned. Fixes: #6913 Change-Id: Ia77ca08aa91ab9403f19a8eb61e2a0e41aad138a
Diffstat (limited to 'lib/sqlalchemy/engine')
-rw-r--r--lib/sqlalchemy/engine/base.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/sqlalchemy/engine/base.py b/lib/sqlalchemy/engine/base.py
index c26d9a0a7..a316f904f 100644
--- a/lib/sqlalchemy/engine/base.py
+++ b/lib/sqlalchemy/engine/base.py
@@ -1287,6 +1287,7 @@ class Connection(Connectable):
if self._has_events or self.engine._has_events:
(
+ default,
distilled_params,
event_multiparams,
event_params,
@@ -1335,6 +1336,7 @@ class Connection(Connectable):
if self._has_events or self.engine._has_events:
(
+ ddl,
distilled_params,
event_multiparams,
event_params,
@@ -1399,7 +1401,7 @@ class Connection(Connectable):
else:
distilled_params = []
- return distilled_params, event_multiparams, event_params
+ return elem, distilled_params, event_multiparams, event_params
def _execute_clauseelement(
self, elem, multiparams, params, execution_options
@@ -1415,6 +1417,7 @@ class Connection(Connectable):
has_events = self._has_events or self.engine._has_events
if has_events:
(
+ elem,
distilled_params,
event_multiparams,
event_params,
@@ -1492,6 +1495,7 @@ class Connection(Connectable):
if self._has_events or self.engine._has_events:
(
+ compiled,
distilled_params,
event_multiparams,
event_params,
@@ -1536,6 +1540,7 @@ class Connection(Connectable):
if not future:
if self._has_events or self.engine._has_events:
(
+ statement,
distilled_params,
event_multiparams,
event_params,