aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2010-01-12 23:54:14 +0000
committerdrh <drh@noemail.net>2010-01-12 23:54:14 +0000
commit6a9c64b363e5b33e0e265f44ff70ea49da1b8dda (patch)
tree833bf50e4c2e467cadbc958cbc11de12baff9ede /src
parent2b1e690ff11ea5ef49edecef98fa94fe8694232d (diff)
downloadsqlite-6a9c64b363e5b33e0e265f44ff70ea49da1b8dda.tar.gz
sqlite-6a9c64b363e5b33e0e265f44ff70ea49da1b8dda.zip
Make sure internal queries are well ordered, even when the
reverse_unordered_selects pragma is in effect. Ticket [eb942c64a157]. FossilOrigin-Name: 0209f17180065d9c213b6c437be1c3c40660665f
Diffstat (limited to 'src')
-rw-r--r--src/prepare.c2
-rw-r--r--src/vacuum.c2
-rw-r--r--src/vdbe.c2
3 files changed, 3 insertions, 3 deletions
diff --git a/src/prepare.c b/src/prepare.c
index 29f83e580..15aafbead 100644
--- a/src/prepare.c
+++ b/src/prepare.c
@@ -315,7 +315,7 @@ static int sqlite3InitOne(sqlite3 *db, int iDb, char **pzErrMsg){
{
char *zSql;
zSql = sqlite3MPrintf(db,
- "SELECT name, rootpage, sql FROM '%q'.%s",
+ "SELECT name, rootpage, sql FROM '%q'.%s ORDER BY rowid",
db->aDb[iDb].zName, zMasterName);
(void)sqlite3SafetyOff(db);
#ifndef SQLITE_OMIT_AUTHORIZATION
diff --git a/src/vacuum.c b/src/vacuum.c
index c44a236de..9d26da3da 100644
--- a/src/vacuum.c
+++ b/src/vacuum.c
@@ -104,7 +104,7 @@ int sqlite3RunVacuum(char **pzErrMsg, sqlite3 *db){
saved_nTotalChange = db->nTotalChange;
saved_xTrace = db->xTrace;
db->flags |= SQLITE_WriteSchema | SQLITE_IgnoreChecks;
- db->flags &= ~SQLITE_ForeignKeys;
+ db->flags &= ~(SQLITE_ForeignKeys | SQLITE_ReverseOrder);
db->xTrace = 0;
pMain = db->aDb[0].pBt;
diff --git a/src/vdbe.c b/src/vdbe.c
index fc66e6d5a..a7d693d53 100644
--- a/src/vdbe.c
+++ b/src/vdbe.c
@@ -4576,7 +4576,7 @@ case OP_ParseSchema: {
initData.iDb = pOp->p1;
initData.pzErrMsg = &p->zErrMsg;
zSql = sqlite3MPrintf(db,
- "SELECT name, rootpage, sql FROM '%q'.%s WHERE %s",
+ "SELECT name, rootpage, sql FROM '%q'.%s WHERE %s ORDER BY rowid",
db->aDb[iDb].zName, zMaster, pOp->p4.z);
if( zSql==0 ){
rc = SQLITE_NOMEM;