From 026449c15ff35a9b89c2ca591d3e3cc791857272 Mon Sep 17 00:00:00 2001 From: Mike Bayer Date: Thu, 13 Nov 2014 13:17:38 -0500 Subject: - Fixed a leak which would occur in the unsupported and highly non-recommended use case of replacing a relationship on a fixed mapped class many times, referring to an arbitrarily growing number of target mappers. A warning is emitted when the old relationship is replaced, however if the mapping were already used for querying, the old relationship would still be referenced within some registries. fixes #3251 --- lib/sqlalchemy/orm/mapper.py | 2 ++ 1 file changed, 2 insertions(+) (limited to 'lib/sqlalchemy/orm/mapper.py') diff --git a/lib/sqlalchemy/orm/mapper.py b/lib/sqlalchemy/orm/mapper.py index 7e88ba161..863dab5cb 100644 --- a/lib/sqlalchemy/orm/mapper.py +++ b/lib/sqlalchemy/orm/mapper.py @@ -1581,6 +1581,8 @@ class Mapper(InspectionAttr): self, prop, )) + oldprop = self._props[key] + self._path_registry.pop(oldprop, None) self._props[key] = prop -- cgit v1.2.1