1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-11-18 10:21:03 +03:00

Trivial simplification to the automatic index logic.

FossilOrigin-Name: 23073a053931de324323f631a6613086786af411
This commit is contained in:
drh
2014-10-28 15:58:50 +00:00
parent 916cd23b2c
commit c3ef4fa88a
3 changed files with 8 additions and 9 deletions

View File

@@ -1,5 +1,5 @@
C Bump\sthe\sversion\snumber\sto\s3.8.8
D 2014-10-28T12:35:28.069
C Trivial\ssimplification\sto\sthe\sautomatic\sindex\slogic.
D 2014-10-28T15:58:50.607
F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
F Makefile.in cf57f673d77606ab0f2d9627ca52a9ba1464146a
F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
@@ -302,7 +302,7 @@ F src/vtab.c 2a30791bbd7926b589401bd09c3abb33de563793
F src/wal.c 10e7de7ce90865a68153f001a61f1d985cd17983
F src/wal.h df01efe09c5cb8c8e391ff1715cca294f89668a4
F src/walker.c c253b95b4ee44b21c406e2a1052636c31ea27804
F src/where.c 4ce8c4826b7f86d080f0ed4e7a9045bb5014be77
F src/where.c 5665df88cbd2b38eb72b4b94c8892c8afb360181
F src/whereInt.h 19279cd0664ce1d90b9ad3ef0108cb494acfe455
F test/8_3_names.test ebbb5cd36741350040fd28b432ceadf495be25b2
F test/aggerror.test a867e273ef9e3d7919f03ef4f0e8c0d2767944f2
@@ -1207,7 +1207,7 @@ F tool/vdbe_profile.tcl 67746953071a9f8f2f668b73fe899074e2c6d8c1
F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4
F tool/warnings.sh 0abfd78ceb09b7f7c27c688c8e3fe93268a13b32
F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
P 30f86eb3f9ac88f83ed9e23ea6cd1fccf68e0812
R 241b510f33643f46040372d1284a7d7b
P 1a7e711ed10860c7985e84b97cdfff748d940b9f
R b0011529707271df74d0fa481aad6091
U drh
Z b060cb081e36e4268c2624adfeebfbc8
Z ab603a6740e2096395006a3b0e96e405

View File

@@ -1 +1 @@
1a7e711ed10860c7985e84b97cdfff748d940b9f
23073a053931de324323f631a6613086786af411

View File

@@ -1651,7 +1651,7 @@ static void constructAutomaticIndex(
** if they go out of sync.
*/
extraCols = pSrc->colUsed & (~idxCols | MASKBIT(BMS-1));
mxBitCol = (pTable->nCol >= BMS-1) ? BMS-1 : pTable->nCol;
mxBitCol = MIN(BMS-1,pTable->nCol);
testcase( pTable->nCol==BMS-1 );
testcase( pTable->nCol==BMS-2 );
for(i=0; i<mxBitCol; i++){
@@ -1660,7 +1660,6 @@ static void constructAutomaticIndex(
if( pSrc->colUsed & MASKBIT(BMS-1) ){
nKeyCol += pTable->nCol - BMS + 1;
}
pLoop->wsFlags |= WHERE_COLUMN_EQ | WHERE_IDX_ONLY;
/* Construct the Index object to describe this index */
pIdx = sqlite3AllocateIndexObject(pParse->db, nKeyCol+1, 0, &zNotUsed);