diff options
author | drh <drh@noemail.net> | 2014-10-24 19:28:09 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2014-10-24 19:28:09 +0000 |
commit | 059b2d50e1c6a57ca301f3c9639f92f7e16ff96e (patch) | |
tree | d61ee5346f3d01523826a4942dc18a94c69e7440 /src/sqliteInt.h | |
parent | 4dd96a8315b3f3b2a516513b06754e1887e426eb (diff) | |
download | sqlite-059b2d50e1c6a57ca301f3c9639f92f7e16ff96e.tar.gz sqlite-059b2d50e1c6a57ca301f3c9639f92f7e16ff96e.zip |
Enhance the automatic index logic so that it creates a partial index when
doing so gives the same answer for less work.
FossilOrigin-Name: d95d0313c447f5baeabdb17284d8606331ab7d49
Diffstat (limited to 'src/sqliteInt.h')
-rw-r--r-- | src/sqliteInt.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/sqliteInt.h b/src/sqliteInt.h index 1b3138be4..b7f992c34 100644 --- a/src/sqliteInt.h +++ b/src/sqliteInt.h @@ -2892,9 +2892,11 @@ struct Walker { void (*xSelectCallback2)(Walker*,Select*);/* Second callback for SELECTs */ Parse *pParse; /* Parser context. */ int walkerDepth; /* Number of subqueries */ + u8 eCode; /* A small processing code */ union { /* Extra data for callback */ NameContext *pNC; /* Naming context */ - int i; /* Integer value */ + int n; /* A counter */ + int iCur; /* A cursor number */ SrcList *pSrcList; /* FROM clause */ struct SrcCount *pSrcCount; /* Counting column references */ } u; @@ -3295,6 +3297,7 @@ void sqlite3LeaveMutexAndCloseZombie(sqlite3*); int sqlite3ExprIsConstant(Expr*); int sqlite3ExprIsConstantNotJoin(Expr*); int sqlite3ExprIsConstantOrFunction(Expr*, u8); +int sqlite3ExprIsTableConstant(Expr*,int); int sqlite3ExprIsInteger(Expr*, int*); int sqlite3ExprCanBeNull(const Expr*); int sqlite3ExprNeedsNoAffinityChange(const Expr*, char); |