| Index: third_party/sqlite/src/ext/fts5/test/fts5optimize.test
|
| diff --git a/third_party/sqlite/src/ext/fts5/test/fts5optimize.test b/third_party/sqlite/src/ext/fts5/test/fts5optimize.test
|
| index 984af8c532326b8a8cd57756a19f5e631e5cd208..3ef6d8a1656e1238eb656136ba60ab6abaa541a4 100644
|
| --- a/third_party/sqlite/src/ext/fts5/test/fts5optimize.test
|
| +++ b/third_party/sqlite/src/ext/fts5/test/fts5optimize.test
|
| @@ -20,6 +20,12 @@ ifcapable !fts5 {
|
| return
|
| }
|
|
|
| +#
|
| +# 1.* - Warm body tests for index optimization using ('optimize')
|
| +#
|
| +# 2.* - Warm body tests for index optimization using ('merge', -1)
|
| +#
|
| +
|
| proc rnddoc {nWord} {
|
| set vocab {a b c d e f g h i j k l m n o p q r s t u v w x y z}
|
| set nVocab [llength $vocab]
|
| @@ -30,14 +36,12 @@ proc rnddoc {nWord} {
|
| return $ret
|
| }
|
|
|
| -
|
| foreach {tn nStep} {
|
| 1 2
|
| 2 10
|
| 3 50
|
| 4 500
|
| } {
|
| -if {$tn!=4} continue
|
| reset_db
|
| db func rnddoc rnddoc
|
| do_execsql_test 1.$tn.1 {
|
| @@ -60,7 +64,46 @@ if {$tn!=4} continue
|
| do_execsql_test 1.$tn.5 {
|
| INSERT INTO t1(t1) VALUES('integrity-check');
|
| }
|
| +
|
| + do_test 1.$tn.6 { fts5_segcount t1 } 1
|
| }
|
|
|
| +foreach {tn nStep} {
|
| + 1 2
|
| + 2 10
|
| + 3 50
|
| + 4 500
|
| +} {
|
| + reset_db
|
| + db func rnddoc rnddoc
|
| + do_execsql_test 1.$tn.1 {
|
| + CREATE VIRTUAL TABLE t1 USING fts5(x, y);
|
| + }
|
| + do_test 2.$tn.2 {
|
| + for {set i 0} {$i < $nStep} {incr i} {
|
| + execsql { INSERT INTO t1 VALUES( rnddoc(5), rnddoc(5) ) }
|
| + }
|
| + } {}
|
| +
|
| + do_execsql_test 2.$tn.3 {
|
| + INSERT INTO t1(t1) VALUES('integrity-check');
|
| + }
|
| +
|
| + do_test 2.$tn.4 {
|
| + execsql { INSERT INTO t1(t1, rank) VALUES('merge', -1) }
|
| + while 1 {
|
| + set c [db total_changes]
|
| + execsql { INSERT INTO t1(t1, rank) VALUES('merge', 1) }
|
| + set c [expr [db total_changes]-$c]
|
| + if {$c<2} break
|
| + }
|
| + } {}
|
| +
|
| + do_execsql_test 2.$tn.5 {
|
| + INSERT INTO t1(t1) VALUES('integrity-check');
|
| + }
|
| +
|
| + do_test 2.$tn.6 { fts5_segcount t1 } 1
|
| +}
|
| finish_test
|
|
|
|
|