aboutsummaryrefslogtreecommitdiff
path: root/src/sqliteInt.h
diff options
context:
space:
mode:
authordrh <>2022-10-22 20:13:46 +0000
committerdrh <>2022-10-22 20:13:46 +0000
commit54cc766b418a0cab68cf21cbbf37872d55a654c6 (patch)
tree4cab5280dcbf1f0e66184614bcb94e38ce62a279 /src/sqliteInt.h
parentf55a7dad195994f2bb24db7df0a0515502386fe2 (diff)
downloadsqlite-54cc766b418a0cab68cf21cbbf37872d55a654c6.tar.gz
sqlite-54cc766b418a0cab68cf21cbbf37872d55a654c6.zip
Enhance the query planner with the ability to discern when an index is
covering even when it indexes columns well beyond the 63rd column. FossilOrigin-Name: 1390417be45dd84e9118f6e761f23b8ff7476d26411e165bbaab678881e4eadd
Diffstat (limited to 'src/sqliteInt.h')
-rw-r--r--src/sqliteInt.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/sqliteInt.h b/src/sqliteInt.h
index ea75eb276..04f8204d2 100644
--- a/src/sqliteInt.h
+++ b/src/sqliteInt.h
@@ -1255,6 +1255,7 @@ typedef struct With With;
#define MASKBIT32(n) (((unsigned int)1)<<(n))
#define SMASKBIT32(n) ((n)<=31?((unsigned int)1)<<(n):0)
#define ALLBITS ((Bitmask)-1)
+#define TOPBIT (((Bitmask)1)<<(BMS-1))
/* A VList object records a mapping between parameters/variables/wildcards
** in the SQL statement (such as $abc, @pqr, or :xyz) and the integer
@@ -4091,13 +4092,13 @@ struct Walker {
struct RefSrcList *pRefSrcList; /* sqlite3ReferencesSrcList() */
int *aiCol; /* array of column indexes */
struct IdxCover *pIdxCover; /* Check for index coverage */
- struct IdxExprTrans *pIdxTrans; /* Convert idxed expr to column */
ExprList *pGroupBy; /* GROUP BY clause */
Select *pSelect; /* HAVING to WHERE clause ctx */
struct WindowRewrite *pRewrite; /* Window rewrite context */
struct WhereConst *pConst; /* WHERE clause constants */
struct RenameCtx *pRename; /* RENAME COLUMN context */
struct Table *pTab; /* Table of generated column */
+ struct CoveringIndexCheck *pCovIdxCk; /* Check for covering index */
SrcItem *pSrcItem; /* A single FROM clause item */
DbFixer *pFix;
} u;