From: Philip Jenvey Date: Sun, 9 Aug 2009 20:35:24 +0000 (+0000) Subject: pull from identity_map atomically to avoid a race with weakref cleanup X-Git-Tag: rel_0_6beta1~344 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=7974625e8b86a28f3ac81c3c620df9b2801b133d;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git pull from identity_map atomically to avoid a race with weakref cleanup --- diff --git a/lib/sqlalchemy/orm/mapper.py b/lib/sqlalchemy/orm/mapper.py index 177799602f..dcf33d07eb 100644 --- a/lib/sqlalchemy/orm/mapper.py +++ b/lib/sqlalchemy/orm/mapper.py @@ -1629,8 +1629,8 @@ class Mapper(object): else: identitykey = identity_key(row) - if identitykey in session_identity_map: - instance = session_identity_map[identitykey] + instance = session_identity_map.get(identitykey) + if instance is not None: state = attributes.instance_state(instance) dict_ = attributes.instance_dict(instance)