Snapshot of upstream SQLite 3.25.0

This commit is contained in:
Stephen Lombardo
2018-09-18 12:31:37 -04:00
parent 1f3bc22483
commit bf3fa86130
558 changed files with 76379 additions and 20890 deletions
+67 -14
View File
@@ -86,9 +86,10 @@ proc test_set {args} {
#
set alltests [list]
foreach f [glob $testdir/*.test] { lappend alltests [file tail $f] }
foreach f [glob -nocomplain \
$testdir/../ext/rtree/*.test \
foreach f [glob -nocomplain \
$testdir/../ext/rtree/*.test \
$testdir/../ext/fts5/test/*.test \
$testdir/../ext/expert/*.test \
$testdir/../ext/lsm1/test/*.test \
] {
lappend alltests $f
@@ -104,7 +105,7 @@ set alltests [test_set $alltests -exclude {
all.test async.test quick.test veryquick.test
memleak.test permutations.test soak.test fts3.test
mallocAll.test rtree.test full.test extraquick.test
session.test
session.test rbu.test
}]
set allquicktests [test_set $alltests -exclude {
@@ -121,7 +122,7 @@ set allquicktests [test_set $alltests -exclude {
vtab_err.test walslow.test walcrash.test walcrash3.test
walthread.test rtree3.test indexfault.test securedel2.test
sort3.test sort4.test fts4growth.test fts4growth2.test
bigsort.test rbu.test walprotocol.test mmap4.test fuzzer2.test
bigsort.test walprotocol.test mmap4.test fuzzer2.test
walcrash2.test e_fkey.test backup.test
fts4merge.test fts4merge2.test fts4merge4.test fts4check.test
@@ -194,7 +195,7 @@ test_suite "valgrind" -prefix "" -description {
} -files [
test_set $allquicktests -exclude *malloc* *ioerr* *fault* *_err* wal.test \
shell*.test crash8.test atof1.test selectG.test \
tkt-fc62af4523.test numindex1.test
tkt-fc62af4523.test numindex1.test corruptK.test
] -initialize {
set ::G(valgrind) 1
} -shutdown {
@@ -282,6 +283,18 @@ test_suite "fts5-light" -prefix "" -description {
-exclude *corrupt* *fault* *big* *fts5aj*
]
test_suite "window" -prefix "" -description {
All window function related tests .
} -files [
test_set [glob -nocomplain $::testdir/window*.test]
]
test_suite "alter" -prefix "" -description {
All ALTER function related tests .
} -files [
test_set [glob -nocomplain $::testdir/alter*.test]
]
test_suite "lsm1" -prefix "" -description {
All LSM1 tests.
} -files [glob -nocomplain $::testdir/../ext/lsm1/test/*.test]
@@ -389,6 +402,30 @@ test_suite "vfslog" -prefix "" -description {
wal* mmap*
]
test_suite "atomic-batch-write" -prefix "" -description {
Like veryquick.test, but must be run on a file-system that supports
atomic-batch-writes. Tests that depend on the journal file being present
are omitted.
} -files [
test_set $allquicktests -exclude *malloc* *ioerr* *fault* *bigfile* *_err* \
*fts5corrupt* *fts5big* *fts5aj* \
crash8.test delete_db.test \
exclusive.test journal3.test \
journal1.test \
jrnlmode.test jrnlmode2.test \
lock4.test pager1.test \
pager3.test sharedA.test \
symlink.test stmt.test \
sync.test sync2.test \
tempdb.test tkt3457.test \
vacuum5.test wal2.test \
walmode.test zerodamage.test
] -initialize {
if {[atomic_batch_write test.db]==0} {
error "File system does NOT support atomic-batch-write"
}
}
lappend ::testsuitelist xxx
#-------------------------------------------------------------------------
# Define the coverage related test suites:
@@ -431,33 +468,31 @@ lappend ::testsuitelist xxx
# Define the permutation test suites:
#
# Run some tests using pre-allocated page and scratch blocks.
# Run some tests using pre-allocated page blocks.
#
# mmap1.test is excluded because a good number of its tests depend on
# the page-cache being larger than the database. But this permutation
# causes the effective limit on the page-cache to be just 24 pages.
#
test_suite "memsubsys1" -description {
Tests using pre-allocated page and scratch blocks
Tests using pre-allocated page blocks
} -files [
test_set $::allquicktests -exclude ioerr5.test malloc5.test mmap1.test
] -initialize {
test_set_config_pagecache 4096 24
catch {db close}
sqlite3_shutdown
sqlite3_config_scratch 25000 1
sqlite3_initialize
autoinstall_test_functions
} -shutdown {
test_restore_config_pagecache
catch {db close}
sqlite3_shutdown
sqlite3_config_scratch 0 0
sqlite3_initialize
autoinstall_test_functions
}
# Run some tests using pre-allocated page and scratch blocks. This time
# Run some tests using pre-allocated page blocks. This time
# the allocations are too small to use in most cases.
#
# Both ioerr5.test and malloc5.test are excluded because they test the
@@ -465,21 +500,19 @@ test_suite "memsubsys1" -description {
# This functionality is disabled if a pre-allocated page block is provided.
#
test_suite "memsubsys2" -description {
Tests using small pre-allocated page and scratch blocks
Tests using small pre-allocated page blocks
} -files [
test_set $::allquicktests -exclude ioerr5.test malloc5.test
] -initialize {
test_set_config_pagecache 512 5
catch {db close}
sqlite3_shutdown
sqlite3_config_scratch 1000 1
sqlite3_initialize
autoinstall_test_functions
} -shutdown {
test_restore_config_pagecache
catch {db close}
sqlite3_shutdown
sqlite3_config_scratch 0 0
sqlite3_initialize
autoinstall_test_functions
}
@@ -1045,13 +1078,33 @@ test_suite "no_optimization" -description {
test_suite "prepare" -description {
Run tests with the db connection using sqlite3_prepare() instead of _v2().
} -dbconfig {
db_use_legacy_prepare $::dbhandle 1
$::dbhandle version -use-legacy-prepare 1
#$::dbhandle cache size 0
} -files [
test_set $allquicktests -exclude *malloc* *ioerr* *fault* \
stmtvtab1.test index9.test
]
test_suite "sorterref" -prefix "" -description {
Run the "veryquick" test suite with SQLITE_CONFIG_SORTERREF_SIZE set
to 0 so that sorter-references are used whenever possible.
} -files [
test_set $allquicktests -exclude *malloc* *ioerr* *fault* *bigfile* *_err* \
*fts5corrupt* *fts5big* *fts5aj*
] -initialize {
catch {db close}
sqlite3_shutdown
sqlite3_config_sorterref 0
sqlite3_initialize
autoinstall_test_functions
} -shutdown {
catch {db close}
sqlite3_shutdown
sqlite3_config_sorterref -1
sqlite3_initialize
autoinstall_test_functions
}
# End of tests
#############################################################################