summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/orm
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2016-01-19 17:08:50 -0500
committerMike Bayer <mike_mp@zzzcomputing.com>2016-01-19 17:08:50 -0500
commit5a279e7ae4417062bf4b73921f382c5e5e415a0b (patch)
tree0566a466c9870af4b37bf3af3cdf0684a2d8eb40 /lib/sqlalchemy/orm
parent39837686b068a6e7016169f31a96a058546e4bdd (diff)
downloadsqlalchemy-5a279e7ae4417062bf4b73921f382c5e5e415a0b.tar.gz
- the order in which _generate_backref() for different mappers is called
is random; therefore it may be called against the subclass mapper first, so need to check .concrete on both sides, references #3630
Diffstat (limited to 'lib/sqlalchemy/orm')
-rw-r--r--lib/sqlalchemy/orm/relationships.py2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/sqlalchemy/orm/relationships.py b/lib/sqlalchemy/orm/relationships.py
index 9b02d86e9..83856eebf 100644
--- a/lib/sqlalchemy/orm/relationships.py
+++ b/lib/sqlalchemy/orm/relationships.py
@@ -1821,7 +1821,7 @@ class RelationshipProperty(StrategizedProperty):
check = set(mapper.iterate_to_root()).\
union(mapper.self_and_descendants)
for m in check:
- if m.has_property(backref_key):
+ if m.has_property(backref_key) and not m.concrete:
raise sa_exc.ArgumentError(
"Error creating backref "
"'%s' on relationship '%s': property of that "