diff options
author | Mike Bayer <mike_mp@zzzcomputing.com> | 2010-02-13 21:16:08 +0000 |
---|---|---|
committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2010-02-13 21:16:08 +0000 |
commit | aedcd6aea6aa3b4601bbc26f5fc23c084c8996ac (patch) | |
tree | bcf773463439c124b0ea8c655e3ac461c26686b5 /lib/sqlalchemy/orm/query.py | |
parent | f4573f73d0c7f7ce5b184e6c227d0e4f406643a5 (diff) | |
download | sqlalchemy-aedcd6aea6aa3b4601bbc26f5fc23c084c8996ac.tar.gz |
- reduced a bit of overhead in attribute expiration, particularly
the version called by column loaders on an incomplete row (i.e.
joined table inheritance). there are more dramatic changes
that can be made here but this one is conservative so far
as far as how much we're altering how InstanceState tracks
"expired" attributes.
Diffstat (limited to 'lib/sqlalchemy/orm/query.py')
-rw-r--r-- | lib/sqlalchemy/orm/query.py | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/sqlalchemy/orm/query.py b/lib/sqlalchemy/orm/query.py index ed5535151..456f1f19c 100644 --- a/lib/sqlalchemy/orm/query.py +++ b/lib/sqlalchemy/orm/query.py @@ -1873,8 +1873,9 @@ class Query(object): state.commit(dict_, list(to_evaluate)) - # expire attributes with pending changes (there was no autoflush, so they are overwritten) - state.expire_attributes(set(evaluated_keys).difference(to_evaluate)) + # expire attributes with pending changes + # (there was no autoflush, so they are overwritten) + state.expire_attributes(dict_, set(evaluated_keys).difference(to_evaluate)) elif synchronize_session == 'fetch': target_mapper = self._mapper_zero() |