diff options
author | drh <drh@noemail.net> | 2012-09-28 00:44:28 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2012-09-28 00:44:28 +0000 |
commit | f784c1ede942139d136f7c00a1d8fb30a4a31f18 (patch) | |
tree | ccdfa605d3e6889f40d2af087b833a9eec956584 /src/expr.c | |
parent | 8ccc6d4076631f3fd97751ce1451453e70c6e329 (diff) | |
parent | a9e3fc05f58a055ffdb67dca2a8215efb698a955 (diff) | |
download | sqlite-f784c1ede942139d136f7c00a1d8fb30a4a31f18.tar.gz sqlite-f784c1ede942139d136f7c00a1d8fb30a4a31f18.zip |
Query planner enhancements to be more agressive about optimizing out ORDER BY
clauses - in particular the query planner now has the ability to omit ORDER BY
clauses that span multiple tables in a join.
FossilOrigin-Name: 1e874629d7cf568368b912b295bd3001147d0b52
Diffstat (limited to 'src/expr.c')
-rw-r--r-- | src/expr.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/expr.c b/src/expr.c index 3d6373881..2d1fb38ed 100644 --- a/src/expr.c +++ b/src/expr.c @@ -2066,7 +2066,7 @@ void sqlite3ExprCacheStore(Parse *pParse, int iTab, int iCol, int iReg){ ** for testing only - to verify that SQLite always gets the same answer ** with and without the column cache. */ - if( pParse->db->flags & SQLITE_ColumnCache ) return; + if( OptimizationDisabled(pParse->db, SQLITE_ColumnCache) ) return; /* First replace any existing entry. ** @@ -3382,7 +3382,7 @@ static int evalConstExpr(Walker *pWalker, Expr *pExpr){ void sqlite3ExprCodeConstants(Parse *pParse, Expr *pExpr){ Walker w; if( pParse->cookieGoto ) return; - if( (pParse->db->flags & SQLITE_FactorOutConst)!=0 ) return; + if( OptimizationDisabled(pParse->db, SQLITE_FactorOutConst) ) return; w.xExprCallback = evalConstExpr; w.xSelectCallback = 0; w.pParse = pParse; |