diff options
| author | mike bayer <mike_mp@zzzcomputing.com> | 2021-06-08 13:07:19 +0000 |
|---|---|---|
| committer | Gerrit Code Review <gerrit@ci3.zzzcomputing.com> | 2021-06-08 13:07:19 +0000 |
| commit | 9dd9648f16c982546b0b9e80fbdba2dc4feb864f (patch) | |
| tree | c6c53a1a6e9dbdadfd00e30a6d442f1ede6651b1 /lib/sqlalchemy/sql | |
| parent | 2fa39312b2c878b717d4c4f41380e5a8931eb374 (diff) | |
| parent | bface2e2fae834246729e539646ce229b8a113d1 (diff) | |
| download | sqlalchemy-9dd9648f16c982546b0b9e80fbdba2dc4feb864f.tar.gz | |
Merge "repair Join.is_derived_from() to not rely on simple identity"
Diffstat (limited to 'lib/sqlalchemy/sql')
| -rw-r--r-- | lib/sqlalchemy/sql/selectable.py | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/sqlalchemy/sql/selectable.py b/lib/sqlalchemy/sql/selectable.py index e24585fa0..1610191d1 100644 --- a/lib/sqlalchemy/sql/selectable.py +++ b/lib/sqlalchemy/sql/selectable.py @@ -1115,7 +1115,9 @@ class Join(roles.DMLTableRole, FromClause): def is_derived_from(self, fromclause): return ( - fromclause is self + # use hash() to ensure direct comparison to annotated works + # as well + hash(fromclause) == hash(self) or self.left.is_derived_from(fromclause) or self.right.is_derived_from(fromclause) ) |
