summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/orm/loading.py
diff options
context:
space:
mode:
Diffstat (limited to 'lib/sqlalchemy/orm/loading.py')
-rw-r--r--lib/sqlalchemy/orm/loading.py6
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/sqlalchemy/orm/loading.py b/lib/sqlalchemy/orm/loading.py
index 8d32edea8..3a29fd777 100644
--- a/lib/sqlalchemy/orm/loading.py
+++ b/lib/sqlalchemy/orm/loading.py
@@ -72,9 +72,6 @@ def instances(query, cursor, context):
if filtered:
rows = util.unique_list(rows, filter_fn)
- for state, (dict_, attrs) in context.partials.items():
- state._commit(dict_, attrs)
-
for row in rows:
yield row
@@ -414,11 +411,14 @@ def instance_processor(mapper, context, result, path, adapter,
state.load_options = context.propagate_options
if state.load_options:
state.load_path = load_path
+
for key, populator in new_populators:
if key not in attrs:
continue
populator(state, dict_, row)
+ state._commit(dict_, attrs)
+
for key, pop in eager_populators:
if key not in unloaded:
pop(state, dict_, row)