]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Merge the STAT3 changes into trunk.
authordrh <drh@noemail.net>
Mon, 3 Oct 2011 15:30:33 +0000 (15:30 +0000)
committerdrh <drh@noemail.net>
Mon, 3 Oct 2011 15:30:33 +0000 (15:30 +0000)
FossilOrigin-Name: 774d0842bcce8862f2aac371f1689536ed234a0a

1  2 
manifest
manifest.uuid
test/analyze3.test
test/stat3.test

diff --cc manifest
index 916f02c3419e98788b0044eb4cd68a4f0573f31c,a3f07b8b92788361d5bd2094d0f4ba2fe90b497d..5b84fd0167523673fcb9ba63588342c836c8f2d3
+++ b/manifest
@@@ -1,9 -1,9 +1,9 @@@
- C Update\sMSVC\smakefile\sto\sallow\stargets\sto\sbe\sbuilt\swith\ssupport\sfor\sICU.
- D 2011-10-02T05:23:16.470
 -C If\san\sopen\sas\sread/write\sfails,\sdo\snot\stry\sto\sreopen\sas\sread-only\sif\sin\nexclusive\saccess\smode.
 -D 2011-09-25T17:47:58.118
++C Merge\sthe\sSTAT3\schanges\sinto\strunk.
++D 2011-10-03T15:30:33.910
  F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
 -F Makefile.in 8de00a4e52f308ef6d564834c0973e53646e0d4c
 +F Makefile.in a162fe39e249b8ed4a65ee947c30152786cfe897
  F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
 -F Makefile.msc 6676bcfe711f621a0b1916ecfa5d0927f8084517
 +F Makefile.msc dcad80fa69f17d46fe6778ba873fc108ca16298d
  F Makefile.vxworks 1deb39c8bb047296c30161ffa10c1b5423e632f9
  F README cd04a36fbc7ea56932a4052d7d0b7f09f27c33d6
  F VERSION bb37c274b503bbe73f00ea4f374eb817cba4b171
@@@ -180,10 -180,10 +180,10 @@@ F src/random.c cd4a67b3953b88019f8cd4cc
  F src/resolve.c 36368f44569208fa074e61f4dd0b6c4fb60ca2b4
  F src/rowset.c 69afa95a97c524ba6faf3805e717b5b7ae85a697
  F src/select.c d9b7d20b0365f80761846f00ef3638d4b33eeaf2
 -F src/shell.c 13fe2aeddc3cc90d6a273831d1f63736d1596f81
 +F src/shell.c e8fe1251aee84baa2fb232ce83d938de25aa650f
- F src/sqlite.h.in c0ebc53056fd99590dec4cb4bd60a0787098ff18
+ F src/sqlite.h.in 3b238342522bfc3b9d68d7ff3240a27a2a59ee59
  F src/sqlite3ext.h 1a1a4f784aa9c3b00edd287940197de52487cd93
- F src/sqliteInt.h 76d81cd9da0618b231398bfcf90556e971972fca
+ F src/sqliteInt.h 28cca77ebdaf6025ae5df52717dff429c7c6d4ef
  F src/sqliteLimit.h 164b0e6749d31e0daa1a4589a169d31c0dec7b3d
  F src/status.c 4568e72dfd36b6a5911f93457364deb072e0b03a
  F src/table.c 2cd62736f845d82200acfa1287e33feb3c15d62e
@@@ -235,9 -235,9 +235,9 @@@ F src/test_wsd.c 41cadfd9d97fe8e3e4e44f
  F src/tokenize.c c819d9f72168a035d545a5bdafe9b085b20df705
  F src/trigger.c 1cfb80e2290ef66ea89cb4e821caae65a02c0d56
  F src/update.c 74a6cfb34e9732c1e2a86278b229913b4b51eeec
- F src/utf.c c53eb7404b3eb5c1cbb5655c6a7a0e0ce6bd50f0
+ F src/utf.c 890c67dcfcc7a74623c95baac7535aadfe265e84
  F src/util.c 06302ffd2b80408d4f6c7af71f7090e0cf8d8ff7
 -F src/vacuum.c 05513dca036a1e7848fe18d5ed1265ac0b32365e
 +F src/vacuum.c 297f39745e05d7a6ed7def7929451474d570a31e
  F src/vdbe.c 60340bfb23f456ea0791cb28262a887363773371
  F src/vdbe.h f0725ee997db869ecae5bb70a71612aabeca7755
  F src/vdbeInt.h 693d6ac6810298fc6b4c503cfbe3f99a240f40af
@@@ -261,13 -261,14 +261,14 @@@ F test/alter2.test 7ea05c7d92ac99349a80
  F test/alter3.test 49c9d9fba2b8fcdce2dedeca97bbf1f369cc548d
  F test/alter4.test b2debc14d8cbe4c1d12ccd6a41eef88a8c1f15d5
  F test/altermalloc.test e81ac9657ed25c6c5bb09bebfa5a047cd8e4acfc
- F test/analyze.test 68b43c1f9cd6ffc3bbb30d27a23712b38c413eca
+ F test/analyze.test f8ab7d15858b4093b06caf5e57e2a5ff7104bdae
  F test/analyze2.test 8f2b1534d43f5547ce9a6b736c021d4192c75be3
- F test/analyze3.test d61f55d8b472fc6e713160b1e577f7a68e63f38b
 -F test/analyze3.test 7bcadc47589fd730f9a12ffc9b30a520d7f6931b
++F test/analyze3.test 9be0af5e23b711559e8f78c42a6c04de956cba9b
  F test/analyze4.test 757b37875cf9bb528d46f74497bc789c88365045
- F test/analyze5.test 1de8d66b11aae5a1453aa042d62e834a476bac9c
- F test/analyze6.test c125622a813325bba1b4999040ddc213773c2290
- F test/analyze7.test 5508e7828164ea0b518ed219bed7320a481863d4
+ F test/analyze5.test 713354664c5ff1853ab2cbcb740f0cf5cb7c802e
+ F test/analyze6.test bd3625806a5ee6f7bef72d06295bd319f0290af2
+ F test/analyze7.test d3587aa5af75c9048d031b94fceca2534fa75d1d
+ F test/analyze8.test 4ca170de2ba30ccb1af2c0406803db72262f9691
  F test/async.test 1d0e056ba1bb9729283a0f22718d3a25e82c277b
  F test/async2.test c0a9bd20816d7d6a2ceca7b8c03d3d69c28ffb8b
  F test/async3.test d73a062002376d7edc1fe3edff493edbec1fc2f7
@@@ -276,9 -277,9 +277,9 @@@ F test/async5.test 0dd8701bd588bf6e70c2
  F test/attach.test 0e6f8de2589f11a5f474ef57fe5af2877e61c0e8
  F test/attach2.test e54436ed956d3d88bdee61221da59bf3935a0966
  F test/attach3.test d89ccfe4fe6e2b5e368d480fcdfe4b496c54cf4e
 -F test/attach4.test 31f9eb0ca7bdbc393cc4657b877903a226a83d4b
 +F test/attach4.test 53bf502f17647c6d6c5add46dda6bac8b6f4665c
  F test/attachmalloc.test 3a4bfca9545bfe906a8d2e622de10fbac5b711b0
- F test/auth.test b047105c32da7db70b842fd24056723125ecc2ff
+ F test/auth.test ac996c81ad910148606f5c7e3b3f85d47c29960f
  F test/auth2.test 270baddc8b9c273682760cffba6739d907bd2882
  F test/auth3.test a4755e6a2a2fea547ffe63c874eb569e60a28eb5
  F test/autoinc.test bd30d372d00045252f6c2e41b5f41455e1975acf
@@@ -685,7 -686,8 +686,8 @@@ F test/speed4.test abc0ad3399dcf9703abe
  F test/speed4p.explain 6b5f104ebeb34a038b2f714150f51d01143e59aa
  F test/speed4p.test 0e51908951677de5a969b723e03a27a1c45db38b
  F test/sqllimits1.test b1aae27cc98eceb845e7f7adf918561256e31298
 -F test/stat.test 0997f6a57a35866b14111ed361ed8851ce7978ae
 -F test/stat3.test 986d735f70ef62a1daf98e8762f35fa3b062c5c3
 +F test/stat.test 36bc951bdc2beac4224cc54396fd6a7dc65336f4
++F test/stat3.test 53e1e3282b6e62af3de160d186fa7336fe1b48bf
  F test/stmt.test 25d64e3dbf9a3ce89558667d7f39d966fe2a71b9
  F test/subquery.test b524f57c9574b2c0347045b4510ef795d4686796
  F test/subquery2.test edcad5c118f0531c2e21bf16a09bbb105252d4cd
@@@ -739,8 -741,7 +741,8 @@@ F test/tkt-b1d3a2e531.test 610ef5824131
  F test/tkt-b351d95f9.test d14a503c414c5c58fdde3e80f9a3cfef986498c0
  F test/tkt-b72787b1.test e6b62b2b2785c04d0d698d6a603507e384165049
  F test/tkt-bd484a090c.test 60460bf946f79a79712b71f202eda501ca99b898
- F test/tkt-cbd054fa6b.test f14f97ea43662e6f70c9e63287081e8be5d9d589
 +F test/tkt-c48d99d690.test bed446e3513ae10eec1b86fdd186ef750226c408
+ F test/tkt-cbd054fa6b.test bd9fb546f63bc0c79d1776978d059fa51c5b1c63
  F test/tkt-d11f09d36e.test fb44f7961aa6d4b632fb7b9768239832210b5fc7
  F test/tkt-d635236375.test 9d37e988b47d87505bc9445be0ca447002df5d09
  F test/tkt-d82e3f3721.test 731359dfdcdb36fea0559cd33fec39dd0ceae8e6
@@@ -857,11 -858,11 +859,11 @@@ F test/types2.test 3555aacf8ed8dc883356
  F test/types3.test 99e009491a54f4dc02c06bdbc0c5eea56ae3e25a
  F test/unique.test 083c7fff74695bcc27a71d75699deba3595bc9c2
  F test/unixexcl.test 9d80a54d86d2261f660758928959368ffc36151e
- F test/unordered.test e81169ce2a8f31b2c6b66af691887e1376ab3ced
+ F test/unordered.test f53095cee37851bf30130fa1bf299a8845e837bb
  F test/update.test 8bc86fd7ef1a00014f76dc6a6a7c974df4aef172
 -F test/uri.test 53de9a2549cbda9c343223236918ef502f6a9051
 +F test/uri.test 0d289d32396bdbc491e9dc845f1a52e13f861e0b
  F test/utf16align.test 54cd35a27c005a9b6e7815d887718780b6a462ae
 -F test/vacuum.test 9516f3a8e49be666f2dde28561e4be5ae5612de0
 +F test/vacuum.test ce91c39f7f91a4273bf620efad21086b5aa6ef1d
  F test/vacuum2.test af432e6e3bfc0ea20a80cb86a03c7d9876d38324
  F test/vacuum3.test 77ecdd54592b45a0bcb133339f99f1ae0ae94d0d
  F test/vacuum4.test d3f8ecff345f166911568f397d2432c16d2867d9
@@@ -964,8 -965,8 +966,8 @@@ F tool/split-sqlite3c.tcl d9be87f1c3402
  F tool/symbols.sh caaf6ccc7300fd43353318b44524853e222557d5
  F tool/tostr.awk e75472c2f98dd76e06b8c9c1367f4ab07e122d06
  F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f
- F tool/warnings.sh b7fdb2cc525f5ef4fa43c80e771636dd3690f9d2
- P 9ddfe1e41300413bc9af7e5ce0ec9d1daf9136b1
- R 03863d4dd01ba5995289085115b33375
- U mistachkin
- Z 7dfdbd4e337132033acb3bc17ce78d60
+ F tool/warnings.sh fbc018d67fd7395f440c28f33ef0f94420226381
 -P 0beb88a92c8f75231df120bef54616c7e4bb68c8
 -R 89507550a3363f4f0fee38865f012e03
++P eb5da5e1dbe9c198095036827318fb381441cbd0 4a153f010037db83107314269b240c0ece8430f8
++R 275c2a97143f629aefcc177df6bba902
+ U drh
 -Z 8cbac2d25730672d9c2dfbd894fb75ea
++Z d37f9abd0dd218dc2e6379072330845e
diff --cc manifest.uuid
index c4bc7f0c61dd2afa9832e3fd615c3a2b41861cfe,a98917ce8db92b4cd14bc99770af93d5097b8c18..b70915ef6b4caf72f62cb5d37aab5663eaeaf592
@@@ -1,1 -1,1 +1,1 @@@
- eb5da5e1dbe9c198095036827318fb381441cbd0
 -4a153f010037db83107314269b240c0ece8430f8
++774d0842bcce8862f2aac371f1689536ed234a0a
index 2378ffaaba9a129212d932d94dfa08fb8050856f,9ac15c46807e3d2cacae4759b2683f4b3f977df3..4e58200f5d1b7b51e75c49d124ee715cc054aba2
@@@ -146,10 -146,10 +146,10 @@@ do_test analyze3-1.2.1 
  } {}
  do_eqp_test analyze3-1.2.2 {
    SELECT sum(y) FROM t2 WHERE x>1 AND x<2
- } {0 0 0 {SEARCH TABLE t2 USING INDEX i2 (x>? AND x<?) (~200 rows)}}
+ } {0 0 0 {SEARCH TABLE t2 USING INDEX i2 (x>? AND x<?) (~196 rows)}}
  do_eqp_test analyze3-1.2.3 {
    SELECT sum(y) FROM t2 WHERE x>0 AND x<99
- } {0 0 0 {SCAN TABLE t2 (~111 rows)}}
 -} {0 0 0 {SEARCH TABLE t2 USING INDEX i2 (x>? AND x<?) (~982 rows)}}
++} {0 0 0 {SEARCH TABLE t2 USING INDEX i2 (x>? AND x<?) (~968 rows)}}
  do_test analyze3-1.2.4 {
    sf_execsql { SELECT sum(y) FROM t2 WHERE x>12 AND x<20 }
  } {161 0 4760}
diff --cc test/stat3.test
index 0000000000000000000000000000000000000000,6c848192c12516ba1e900ccaff7e738d072017f9..9477672f27b58ecc16cbdb802982393f6ea64f6b
mode 000000,100644..100644
--- /dev/null
@@@ -1,0 -1,56 +1,56 @@@
 -    db eval {ANALYZE; SELECT name FROM sqlite_master ORDER BY 1}
+ # 2011 August 08
+ #
+ # The author disclaims copyright to this source code.  In place of
+ # a legal notice, here is a blessing:
+ #
+ #    May you do good and not evil.
+ #    May you find forgiveness for yourself and forgive others.
+ #    May you share freely, never taking more than you give.
+ #
+ #***********************************************************************
+ #
+ # This file implements regression tests for SQLite library. This file 
+ # implements tests for the extra functionality provided by the ANALYZE 
+ # command when the library is compiled with SQLITE_ENABLE_STAT3 defined.
+ #
+ set testdir [file dirname $argv0]
+ source $testdir/tester.tcl
+ set testprefix stat3
+ # Verify that if not compiled with SQLITE_ENABLE_STAT2 that the ANALYZE
+ # command will delete the sqlite_stat2 table.  Likewise, if not compiled
+ # with SQLITE_ENABLE_STAT3, the sqlite_stat3 table is deleted.
+ #
+ do_test 1.1 {
+   db eval {
+     PRAGMA writable_schema=ON;
+     CREATE TABLE sqlite_stat2(tbl,idx,sampleno,sample);
+     CREATE TABLE sqlite_stat3(tbl,idx,neq,nlt,ndlt,sample);
+     SELECT name FROM sqlite_master ORDER BY 1;
+   }
+ } {sqlite_stat2 sqlite_stat3}
+ do_test 1.2 {
+   db close
+   sqlite3 db test.db
+   db eval {SELECT name FROM sqlite_master ORDER BY 1}
+ } {sqlite_stat2 sqlite_stat3}
+ ifcapable {stat3} {
+   do_test 1.3 {
+     db eval {ANALYZE; SELECT name FROM sqlite_master ORDER BY 1}
+   } {sqlite_stat1 sqlite_stat3}
+ } else {
+   do_test 1.4 {
++    db eval {ANALYZE; ANALYZE; SELECT name FROM sqlite_master ORDER BY 1}
+   } {sqlite_stat1}
+   finish_test
+   return
+ }
+ finish_test