]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Fixes for builds without SQLITE_ENABLE_STAT4.
authordan <dan@noemail.net>
Tue, 6 Aug 2013 20:15:06 +0000 (20:15 +0000)
committerdan <dan@noemail.net>
Tue, 6 Aug 2013 20:15:06 +0000 (20:15 +0000)
FossilOrigin-Name: 84999e27cc0d14b89d9fe024e29d287c69285369

manifest
manifest.uuid
src/analyze.c
src/where.c
test/analyze9.test

index 0ada153ab5297a58dbc0b9adcd0460b9be1d2841..539c78a499254ac8c5b901df77af3ced3be9dac6 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C When\spossible,\suse\sthe\smulti-column\ssamples\sin\ssqlite_stat4\sto\sestimate\sthe\snumber\sof\sindex\srows\sscanned\sby\sa\squery\splan.
-D 2013-08-06T20:01:43.152
+C Fixes\sfor\sbuilds\swithout\sSQLITE_ENABLE_STAT4.
+D 2013-08-06T20:15:06.692
 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
 F Makefile.in 5e41da95d92656a5004b03d3576e8b226858a28e
 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
@@ -157,7 +157,7 @@ F sqlite.pc.in 42b7bf0d02e08b9e77734a47798d1a55a9e0716b
 F sqlite3.1 6be1ad09113570e1fc8dcaff84c9b0b337db5ffc
 F sqlite3.pc.in ae6f59a76e862f5c561eb32a380228a02afc3cad
 F src/alter.c 2af0330bb1b601af7a7789bf7229675fd772a083
-F src/analyze.c 726a63b19f7f1478b321b84fc03ae9d754624841
+F src/analyze.c b8b0d15347ae34772f0df9b6d02848dea9dfe8a3
 F src/attach.c 1816f5a9eea8d2010fc2b22b44f0f63eb3a62704
 F src/auth.c 523da7fb4979469955d822ff9298352d6b31de34
 F src/backup.c 43b348822db3e4cef48b2ae5a445fbeb6c73a165
@@ -290,7 +290,7 @@ F src/vtab.c 2e8b489db47e20ae36cd247932dc671c9ded0624
 F src/wal.c 7dc3966ef98b74422267e7e6e46e07ff6c6eb1b4
 F src/wal.h df01efe09c5cb8c8e391ff1715cca294f89668a4
 F src/walker.c 4fa43583d0a84b48f93b1e88f11adf2065be4e73
-F src/where.c 37c3dc9e9fddc2362c4926c0c64ca2d270c09d26
+F src/where.c 142525786b7855a0997e113f3932833bf5c1f63c
 F test/8_3_names.test ebbb5cd36741350040fd28b432ceadf495be25b2
 F test/aggerror.test a867e273ef9e3d7919f03ef4f0e8c0d2767944f2
 F test/aggnested.test 45c0201e28045ad38a530b5a144b73cd4aa2cfd6
@@ -308,7 +308,7 @@ F test/analyze5.test e3eece09761c935ec0b85dc4ed70dbf6cac1ed77
 F test/analyze6.test 3c01e084309706a1033f850330ea24f6f7846297
 F test/analyze7.test c0af22c5e0140e2e4ac556a21c2b6fff58229c98
 F test/analyze8.test 092425439c12f62f9d5c3127e2b4f6e7b3e170cc
-F test/analyze9.test 30479ec9ac395e77cfced52496845500768d45f9
+F test/analyze9.test 1ed4e7d95d8e1e1923766281b20870d61730450c
 F test/async.test 1d0e056ba1bb9729283a0f22718d3a25e82c277b
 F test/async2.test c0a9bd20816d7d6a2ceca7b8c03d3d69c28ffb8b
 F test/async3.test d73a062002376d7edc1fe3edff493edbec1fc2f7
@@ -1106,7 +1106,7 @@ F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4
 F tool/warnings.sh fbc018d67fd7395f440c28f33ef0f94420226381
 F tool/wherecosttest.c f407dc4c79786982a475261866a161cd007947ae
 F tool/win/sqlite.vsix 97894c2790eda7b5bce3cc79cb2a8ec2fde9b3ac
-P 4a51cf289fad8aebc637b5f96488de18e861195d
-R 35ea3b91ab20c676c2ada836f868975b
+P 2973f5ca736c4a6f13c653d54b6a29d7cae8d0ed
+R 3fc350a341f72f5a912cf9e1ccf56bc1
 U dan
-Z 27d68e9c86b12d5cd9aae1be85713ec1
+Z 97c03093fe0c6a197e3d6120177c182a
index 346421d3a1637d6992c5c98151ea1dbebe485681..3d5a8cb3bf14b456806bf1c933ecb6d339ec16d3 100644 (file)
@@ -1 +1 @@
-2973f5ca736c4a6f13c653d54b6a29d7cae8d0ed
\ No newline at end of file
+84999e27cc0d14b89d9fe024e29d287c69285369
\ No newline at end of file
index 564edb6139e72ea68cb8ecd54cf22e9bcbaba9cc..17cecb43d93bf5c7e5ee35d1d6259b702bdefaf5 100644 (file)
@@ -761,9 +761,11 @@ static void analyzeOneTable(
     }
 
     /* Invoke stat4_push() */
+#ifdef SQLITE_ENABLE_STAT4
     sqlite3VdbeAddOp3(v, OP_Function, 1, regStat4, regTemp);
     sqlite3VdbeChangeP4(v, -1, (char*)&stat4PushFuncdef, P4_FUNCDEF);
     sqlite3VdbeChangeP5(v, 2 + 3*nCol);
+#endif
 
     sqlite3VdbeAddOp2(v, OP_If, regEof, endOfScan);
     for(i=0; i<nCol-1; i++){
index ad74928c940328027f770a30f7514023b6431503..a8437d843cee37bae7533287e54412e6cf4eb916 100644 (file)
@@ -2565,7 +2565,6 @@ static int whereRangeScanEst(
 #else
   UNUSED_PARAMETER(pParse);
   UNUSED_PARAMETER(pBuilder);
-  UNUSED_PARAMETER(nEq);
 #endif
   assert( pLower || pUpper );
   *pRangeDiv = 0;
@@ -4576,15 +4575,19 @@ static int whereLoopAddBtree(
       }
     }
 
+#ifdef SQLITE_ENABLE_STAT4
     assert( pBuilder->pRec==0 );
     rc = sqlite3Stat4ProbeNew(pWInfo->pParse, pProbe, &pBuilder->pRec);
     if( rc==SQLITE_OK ){
+#endif
       rc = whereLoopAddBtreeIndex(pBuilder, pSrc, pProbe, 0);
+#ifdef SQLITE_ENABLE_STAT4
       sqlite3Stat4ProbeFree(pBuilder->pRec);
       pBuilder->nRecValid = 0;
       pBuilder->pRec = 0;
     }
     assert( pBuilder->pRec==0 );
+#endif
 
     /* If there was an INDEXED BY clause, then only that one index is
     ** considered. */
index fd83df60311ca4d9dc95dcc4ce087679bc2bceb4..1e0171c03b416c80eb765c6478cbc15a52875ff2 100644 (file)
@@ -14,6 +14,11 @@ set testdir [file dirname $argv0]
 source $testdir/tester.tcl
 set testprefix analyze9
 
+ifcapable !stat4 {
+  finish_test
+  return
+}
+
 proc s {blob} {
   set ret ""
   binary scan $blob c* bytes