"Bert Huijben" <b...@qqmail.nl> writes: >> Index: subversion/libsvn_wc/wc-queries.sql >> ================================================================ >> === >> --- subversion/libsvn_wc/wc-queries.sql (revision 1692140) >> +++ subversion/libsvn_wc/wc-queries.sql (working copy) >> @@ -818,6 +818,7 @@ WHERE wc_id = ?1 >> OR IS_STRICT_DESCENDANT_OF(local_relpath, ?2)) >> AND op_depth = ?3 >> AND presence NOT IN ('base-deleted', 'not-present', 'excluded', > 'absent') >> +ORDER BY local_relpath >> >> -- STMT_INSERT_WORKING_NODE_FROM_BASE_COPY >> INSERT INTO nodes ( > > Yes this is the right fix for that problem. > > While the code that processes this query result doesn't rely on the ordering > of the result, the maintainer mode checks do rely on that ordering. > > This fix (r1567080) is part of a batch of fixes that I found by asking > Sqlite to return result rows backwards in all cases where queries didn't ask > for an explicit ordering. (Now triggered by setting > SVN_SQLITE_REVERSE_UNORDERED_SELECTS during compilation of libsvn_subr; but > I don't think that support was already available in 1.7)
I backported SVN_SQLITE_REVERSE_UNORDERED_SELECTS to 1.7 and the above fix to STMT_INSERT_DELETE_FROM_NODE_RECURSIVE is sufficient to PASS the regression tests when reverse is enabled. Reverting r1687152 is the most reliable way to avoid a regression but fixing STMT_INSERT_DELETE_FROM_NODE_RECURSIVE is probably sufficient. -- Philip Martin WANdisco