diff options
| author | Mike Bayer <mike_mp@zzzcomputing.com> | 2018-03-05 21:36:18 -0500 |
|---|---|---|
| committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2018-03-05 21:37:12 -0500 |
| commit | 9a13f007e2342def94cc7362eeadd5ec8c988340 (patch) | |
| tree | 8ce2b9ec76a68c35d836bde746af877286b417be /lib/sqlalchemy/sql/selectable.py | |
| parent | 0e146706058c8e4920c675644623601f2c4930d7 (diff) | |
| download | sqlalchemy-9a13f007e2342def94cc7362eeadd5ec8c988340.tar.gz | |
Clone _cte_alias instead of assigning "self"
Fixed bug in :class:.`CTE` construct along the same lines as that of
:ticket:`4204` where a :class:`.CTE` that was aliased would not copy itself
correctly during a "clone" operation as is frequent within the ORM as well
as when using the :meth:`.ClauseElement.params` method.
Change-Id: Id68d72dd244dedfc7bd6116c9a5123c51a55ea20
Fixes: #4210
Diffstat (limited to 'lib/sqlalchemy/sql/selectable.py')
| -rw-r--r-- | lib/sqlalchemy/sql/selectable.py | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/sqlalchemy/sql/selectable.py b/lib/sqlalchemy/sql/selectable.py index 29b8836dd..04f6c086d 100644 --- a/lib/sqlalchemy/sql/selectable.py +++ b/lib/sqlalchemy/sql/selectable.py @@ -1391,7 +1391,7 @@ class CTE(Generative, HasSuffixes, Alias): def _copy_internals(self, clone=_clone, **kw): super(CTE, self)._copy_internals(clone, **kw) if self._cte_alias is not None: - self._cte_alias = self + self._cte_alias = clone(self._cte_alias, **kw) self._restates = frozenset([ clone(elem, **kw) for elem in self._restates ]) |
