From: dan Date: Wed, 29 May 2013 14:22:19 +0000 (+0000) Subject: Add tests for running FTS 'merge' and 'optimize' commands in shared cache mode. X-Git-Tag: version-3.8.0~149 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ba4f01edb39ce20634dc909678d77eb41362019e;p=thirdparty%2Fsqlite.git Add tests for running FTS 'merge' and 'optimize' commands in shared cache mode. FossilOrigin-Name: 09e5a7ad85dc592fce868a2d0f8719c6915ccb47 --- diff --git a/manifest b/manifest index 6cd3474131..41b7348ead 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Add\sthe\spercentile()\sSQL\sfunction\sas\sa\sloadable\s\nextension\sin\sthe\sext/misc\sdirectory. -D 2013-05-28T20:25:54.766 +C Add\stests\sfor\srunning\sFTS\s'merge'\sand\s'optimize'\scommands\sin\sshared\scache\smode. +D 2013-05-29T14:22:19.357 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in 5e41da95d92656a5004b03d3576e8b226858a28e F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -549,6 +549,7 @@ F test/fts4langid.test 24a6e41063b416bbdf371ff6b4476fa41c194aa7 F test/fts4merge.test c424309743fdd203f8e56a1f1cd7872cd66cc0ee F test/fts4merge2.test 5faa558d1b672f82b847d2a337465fa745e46891 F test/fts4merge3.test aab02a09f50fe6baaddc2e159c3eabc116d45fc7 +F test/fts4merge4.test c19c85ca1faa7b6d536832b49c12e1867235f584 F test/fts4unicode.test 25ccad45896f8e50f6a694cff738a35f798cdb40 F test/full.test 6b3c8fb43c6beab6b95438c1675374b95fab245d F test/func.test b0fc34fdc36897769651975a2b0a606312753643 @@ -1092,7 +1093,7 @@ F tool/vdbe-compress.tcl f12c884766bd14277f4fcedcae07078011717381 F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh fbc018d67fd7395f440c28f33ef0f94420226381 F tool/win/sqlite.vsix 97894c2790eda7b5bce3cc79cb2a8ec2fde9b3ac -P 2f97e38a6611cb17c24d74332d3ac3777dc0dd3e -R 339888db3396051923023dfe123ab06e -U drh -Z 1117fca47d6619d98ed20043a3bd4774 +P a64d760d9290b1be78cdda7ae66d4f02c3b3fa53 +R 397c6acb8d54cefb71664fb2c7388de6 +U dan +Z 3291738ca16dd9e62c0c52ca9c9e0ddb diff --git a/manifest.uuid b/manifest.uuid index c471926f30..3a46c9e9d2 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -a64d760d9290b1be78cdda7ae66d4f02c3b3fa53 \ No newline at end of file +09e5a7ad85dc592fce868a2d0f8719c6915ccb47 \ No newline at end of file diff --git a/test/fts4merge4.test b/test/fts4merge4.test new file mode 100644 index 0000000000..8e2119de2b --- /dev/null +++ b/test/fts4merge4.test @@ -0,0 +1,58 @@ +# 2013 May 29 +# +# 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. +# + +set testdir [file dirname $argv0] +source $testdir/tester.tcl +source $testdir/fts3_common.tcl +set ::testprefix fts4merge4 + +ifcapable !fts3 { + finish_test + return +} + +set ::enable_shared_cache [sqlite3_enable_shared_cache 1] + +do_execsql_test 1.1 { CREATE VIRTUAL TABLE t1 USING fts4 } + +do_test 1.2 { + for {set i 0} {$i < 2000} {incr i} { + execsql {INSERT INTO t1 VALUES('a b c d e f g h i j k l');} + } +} {} + +do_test 1.3 { + execsql BEGIN + for {set i 0} {$i < 2000} {incr i} { + execsql {INSERT INTO t1 VALUES('a b c d e f g h i j k l');} + } + execsql { + INSERT INTO t1(t1) VALUES('merge=8,50'); + COMMIT + } +} {} + +reset_db +do_execsql_test 2.0 { CREATE VIRTUAL TABLE t1 USING fts4 } +do_test 2.1 { + for {set i 0} {$i < 2000} {incr i} { + execsql {INSERT INTO t1 VALUES('a b c d e f g h i j k l');} + } +} {} +do_execsql_test 2.2 { SELECT count(*) FROM t1_segdir; } 35 +do_execsql_test 2.3 { INSERT INTO t1(t1) VALUES('optimize') } {} +do_execsql_test 2.4 { SELECT count(*) FROM t1_segdir; } 1 + + +sqlite3_enable_shared_cache $::enable_shared_cache +finish_test