0
0
mirror of https://github.com/tursodatabase/libsql.git synced 2025-06-18 01:29:11 +00:00
Files
.cargo
.github
bindings
bottomless
bottomless-cli
docker-compose
libsql
libsql-server
libsql-shell
libsql-sqlite3
art
autoconf
contrib
crates
doc
ext
async
crr
expert
fts3
fts5
test
fts5_common.tcl
fts5aa.test
fts5ab.test
fts5ac.test
fts5ad.test
fts5ae.test
fts5af.test
fts5ag.test
fts5ah.test
fts5ai.test
fts5aj.test
fts5ak.test
fts5al.test
fts5alter.test
fts5auto.test
fts5aux.test
fts5auxdata.test
fts5bigid.test
fts5bigpl.test
fts5bigtok.test
fts5cat.test
fts5circref.test
fts5colset.test
fts5columnsize.test
fts5config.test
fts5conflict.test
fts5connect.test
fts5content.test
fts5contentless.test
fts5contentless2.test
fts5contentless3.test
fts5contentless4.test
fts5contentless5.test
fts5corrupt.test
fts5corrupt2.test
fts5corrupt3.test
fts5corrupt4.test
fts5corrupt5.test
fts5corrupt6.test
fts5corrupt7.test
fts5delete.test
fts5detail.test
fts5determin.test
fts5dlidx.test
fts5doclist.test
fts5ea.test
fts5eb.test
fts5fault1.test
fts5fault2.test
fts5fault3.test
fts5fault4.test
fts5fault5.test
fts5fault6.test
fts5fault7.test
fts5fault8.test
fts5fault9.test
fts5faultA.test
fts5faultB.test
fts5faultD.test
fts5faultE.test
fts5faultF.test
fts5first.test
fts5full.test
fts5fuzz1.test
fts5hash.test
fts5integrity.test
fts5interrupt.test
fts5lastrowid.test
fts5leftjoin.test
fts5limits.test
fts5matchinfo.test
fts5merge.test
fts5merge2.test
fts5misc.test
fts5multi.test
fts5multiclient.test
fts5near.test
fts5onepass.test
fts5optimize.test
fts5optimize2.test
fts5phrase.test
fts5plan.test
fts5porter.test
fts5porter2.test
fts5prefix.test
fts5prefix2.test
fts5query.test
fts5rank.test
fts5rebuild.test
fts5restart.test
fts5rowid.test
fts5savepoint.test
fts5secure.test
fts5secure2.test
fts5secure3.test
fts5secure4.test
fts5secure5.test
fts5secure6.test
fts5securefault.test
fts5simple.test
fts5simple2.test
fts5simple3.test
fts5synonym.test
fts5synonym2.test
fts5tok1.test
fts5tok2.test
fts5tokenizer.test
fts5trigram.test
fts5ubsan.test
fts5umlaut.test
fts5unicode.test
fts5unicode2.test
fts5unicode3.test
fts5unicode4.test
fts5unindexed.test
fts5update.test
fts5version.test
fts5vocab.test
fts5vocab2.test
tool
extract_api_docs.tcl
fts5.h
fts5Int.h
fts5_aux.c
fts5_buffer.c
fts5_config.c
fts5_expr.c
fts5_hash.c
fts5_index.c
fts5_main.c
fts5_storage.c
fts5_tcl.c
fts5_test_mi.c
fts5_test_tok.c
fts5_tokenize.c
fts5_unicode2.c
fts5_varint.c
fts5_vocab.c
fts5parse.y
mkportersteps.tcl
icu
jni
lsm1
misc
rbu
recover
repair
rtree
session
udf
userauth
vwal
wasm
README.md
mptest
src
test
tool
vsixtest
.gitignore
CODE_OF_CONDUCT.md
Dockerfile-wasm-udf
LIBSQL_VERSION
LICENSE.md
Makefile.in
Makefile.linux-gcc
Makefile.msc
README-SQLite.md
VERSION
aclocal.m4
config.guess
config.sub
configure
configure.ac
install-sh
libsql.pc.in
ltmain.sh
magic.txt
main.mk
manifest
manifest.uuid
spec.template
sqlite.pc.in
sqlite3.1
sqlite3.pc.in
sqlite_cfg.h.in
libsql-sys
libsql-sys-tmp
vendored
.dockerignore
.gitignore
Cargo.lock
Cargo.toml
Dockerfile
Dockerfile.dev
LICENSE.md
README-libsql.md
README.md
docker-entrypoint.sh
fly.toml
rust-toolchain.toml
libsql/libsql-sqlite3/ext/fts5/test/fts5merge2.test
2023-10-16 13:58:16 +02:00

58 lines
1.4 KiB
Plaintext

# 2014 Dec 20
#
# 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.
#
#***********************************************************************
#
# Test that focus on incremental merges of segments.
#
source [file join [file dirname [info script]] fts5_common.tcl]
set testprefix fts5merge2
return_if_no_fts5
proc dump_structure {} {
db eval {SELECT fts5_decode(id, block) AS t FROM t1_data WHERE id=10} {
foreach lvl [lrange $t 1 end] {
set seg [string repeat . [expr [llength $lvl]-2]]
puts "[lrange $lvl 0 1] $seg"
}
}
}
foreach_detail_mode $testprefix {
do_execsql_test 1.0 {
CREATE VIRTUAL TABLE t1 USING fts5(x, detail=%DETAIL%);
INSERT INTO t1(t1, rank) VALUES('pgsz', 32);
INSERT INTO t1(t1, rank) VALUES('crisismerge', 2);
INSERT INTO t1 VALUES('1 2 3 4');
}
expr srand(0)
db func rnddoc fts5_rnddoc
do_test 1.1 {
for {set i 0} {$i < 100} {incr i} {
execsql {
BEGIN;
DELETE FROM t1 WHERE rowid = 1;
INSERT INTO t1(rowid, x) VALUES(1, '1 2 3 4');
INSERT INTO t1 VALUES(rnddoc(10));
COMMIT;
}
}
} {}
do_execsql_test 1.2 {
INSERT INTO t1(t1) VALUES('integrity-check');
}
}
finish_test