diff options
Diffstat (limited to 'lib/sqlalchemy/mapper.py')
-rw-r--r-- | lib/sqlalchemy/mapper.py | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/sqlalchemy/mapper.py b/lib/sqlalchemy/mapper.py index 5e39e10f6..c41c5edb0 100644 --- a/lib/sqlalchemy/mapper.py +++ b/lib/sqlalchemy/mapper.py @@ -486,6 +486,7 @@ class Mapper(object): def _compile(self, whereclause = None, order_by = None, **options): statement = sql.select([self.table], whereclause, order_by = order_by) + statement.order_by(self.primarytable.rowid_column) # plugin point for key, value in self.props.iteritems(): value.setup(key, statement, **options) @@ -1024,8 +1025,10 @@ class EagerLoader(PropertyLoader): print self.target.name print str(self.primaryjoin) statement._outerjoin = sql.outerjoin(towrap, self.secondary, self.primaryjoin).outerjoin(self.target, self.secondaryjoin) + statement.order_by(self.secondary.rowid_column) else: statement._outerjoin = towrap.outerjoin(self.target, self.primaryjoin) + statement.order_by(self.target.rowid_column) statement.append_from(statement._outerjoin) statement.append_column(self.target) |