SQLite 3.8.8 Status Board

History    Checklist    Baseline

 
1.   Test procedure review. drh ok  *
 
a.   Review the "test/releasetest.tcl" script for completeness and accuracy. drh ok  *
b.   Review "multitest.tcl" and "alignment*.rc" scripts in TH3 for completeness. drh ok  *
c.   Review this checklist for completeness and accuracy. drh ok  *
 
2.   Source code change review. fossil diff --from release --to trunk drh ok  *
 
a.   No stray changes. drh ok  *
b.   All significant changes are mentioned in the "changes" log of the documentation. drh ok  *
c.   New code complies with style guidelines. drh ok  *
d.   New code complies with design rules. drh ok  *
e.   Comments have been updated to reflect code changes. drh ok  *
f.   Variables and functions have been renamed to reflect changes in their use. drh ok  *
g.   Check all calls to sqlite3OsRead() and sqlite3OsWrite() to ensure that offset computations are 64-bit clean. dan ok  *
h.   Check all calls to memory allocation routines to ensure that size computations are 64-bit clean. Suggested regular expression for search: /(Re|M)alloc[FORZa-z]*\(/ dan ok  *
i.   Verify that source code contains no tabs and that surplus whitespace has been removed. drh ok  *
j.   Verify that the list of APIs exposed via the extension header is up-to-date (sqlite3ext.h).
sqlite3_stmt_scanstatus() is not added. But it is an obscure and seldom-used interface.
drh ok  *
 
3.   Documentation review: drh ok  *
 
a.   Latest release on the "index.html" page. drh ok  *
b.   Release announcement in "changes.in". drh ok  *
c.   Release accouncement in "news.html". drh ok  *
d.   No unresolved hyperlinks in the documentation build. drh ok  *
e.   Requirements marks are up-to-date in both documentation and source code.
One stale evidence mark in where03.test:86. We'll deal with that later.
drh ok  *
f.   The compile-time options are all up-to-date (compile.html). drh ok  *
g.   Database footprint is up-to-date (features.html). drh ok  *
h.   Test metrics are up-to-date (testing.html). drh ok  *
i.   Check new/changed documentation for spelling and gramatical mistakes. drh ok  *
 
4.   Compiler warning checks. drh ok  *
 
a.   Linux GCC -Wall -Wextra (the "tool/warnings.sh" script) drh ok  *
b.   Mac OS X GCC -Wall -Wextra (the "tool/warnings.sh" script) drh ok  *
c.   OpenBSD GCC using options -Wall
[gcc -c -Wall sqlite3.c] works with no warnings.
dan ok  *
d.   Windows (32-bit) MSVC using option /W4 mistachkin ok  *
e.   Windows (64-bit) MSVC using option /W4 mistachkin ok  *
f.   sh tool/warnings-clang.sh drh ok  *
 
5.   OMIT, ENABLE, and DISABLE options: drh ok  *
 
a.   tclsh ../tool/omittest.tcl -skip_run -target libsqlite3.a drh ok  *
 
6.   Tests for platform Linux x86_64: drh ok  *
 
a.   tclsh multitest.tcl
0 failures on 30 th3make runs and 163259360 tests in (12:37:28) SQLite 3.8.8 2015-01-13 21:26:17 882181ff9dd75f32db266db6e476671021fc567b - on Bella
drh ok+  *
b.   Check the "multitest.tcl" log files for undetected errors. drh ok  *
c.   tclsh releasetest.tcl
0 failures out of 8752027 tests in (06:59:08) SQLite 3.8.8 2015-01-15 17:38:35 8f45217cbafef2297cdcec3fd69f4371dfb83922 - on Tallis
drh ok  *
d.   Check the "releasetest.tcl" log files for undetected errors. drh ok  *
e.   tclsh multitest.tcl --scenario obscure
0 failures on 2 th3make runs and 2973450 tests in (00:07:56) SQLite 3.8.8 2015-01-12 21:43:00 e693e11d1b9265974c32bddba873ea30a4d0b708 - Tallis
drh ok  *
f.   tclsh multitest.tcl --scenario failures - all failures detected
0 failures on 2 th3make runs and 2973450 tests in (00:07:56) SQLite 3.8.8 2015-01-12 21:43:00 e693e11d1b9265974c32bddba873ea30a4d0b708
drh ok+  *
g.   tclsh releasetest.cl --platform Failure-Detection - all failures detected
12 failures out of 776 tests in (00:02:51) SQLite 3.8.8 2015-01-12 21:43:00 e693e11d1b9265974c32bddba873ea30a4d0b708
drh ok+  *
h.   sh tool/symbols.sh - no incorrect exports or dependencies drh ok  *
 
7.   Tests for platform Linux ARM (BeagleBoard) drh ok  *
 
a.   tclsh th3make min.rc
./th3: 0 errors out of 1412700 tests in 3278.657 seconds ./th3: SQLite 3.8.8 2015-01-12 21:43:00 e693e11d1b9265974c32bddba873ea30a4d0b708
drh ok  *
b.   Recompile and test Fossil. drh ok  *
 
8.   Tests for platform Mac OS X (x86): drh ok  *
 
a.   tclsh releasetest.tcl
0 failures out of 4245577 tests in (06:00:24) SQLite 3.8.8 2015-01-13 21:26:17 882181ff9dd75f32db266db6e476671021fc567b - iMac
drh ok  *
b.   tclsh multitest.tcl --omit test-ex
0 failures on 25 th3make runs and 115451612 tests in (23:36:10) SQLite 3.8.8 2015-01-13 21:26:17 882181ff9dd75f32db266db6e476671021fc567b - it was actually doing the test-ex.rc test, which was killed during "c6". No errors seen up until that point.
drh ok+  *
c.   tclsh multitest.tcl --scenario failures - all failures detected
2 failures on 2 th3make runs and 42 tests in (00:00:54) SQLite 3.8.8 2015-01-12 21:43:00 e693e11d1b9265974c32bddba873ea30a4d0b708
drh ok+  *
d.   tclsh releasetest.cl --platform Failure-Detection - all failures detected drh ok  *
 
9.   Tests for platform Mac OS X 10.2 (PPC): drh ok  *
 
a.   tclsh th3make quick.rc
./th3: 0 errors out of 1415407 tests in 4009.471 seconds ./th3: SQLite 3.8.8 2015-01-13 21:26:17 882181ff9dd75f32db266db6e476671021fc567b
drh ok  *
b.   Recompile and test Fossil. drh ok  *
c.   Verify that Fossil repositories are cross-platform with x86/x64. drh ok  *
 
10.   Tests for platform Windows 7.0/8.x (x86): drh ok  *
 
a.   th3make msvc.rc test.rc /RTC1
req1/malloc02.test test issue fixed: 5682db7b871689b9ee764afe070736f378e8ae1b, 32-bit little-endian, 8 errors out of 5804816 tests in 5543.975 seconds
mistachkin ok  *
b.   tclsh test/releasetest.tcl
0 failures out of 1108940 tests in (01:19:34) SQLite 3.8.8 2015-01-13 21:26:17 882181ff9dd75f32db266db6e476671021fc567b
drh ok+  *
c.   tclsh multitest.tcl --omit test-ex
0 failures on 21 th3make runs and 103387682 tests in (23:42:22) SQLite 3.8.8 2015-01-13 21:26:17 882181ff9dd75f32db266db6e476671021fc567b - Win7. Stopped in the middle of t26. The prior Win8 run ran to completion. This run is supplimental.
drh ok+  *
d.   tclsh multitest.tcl --scenario failures - verify failures detected drh ok  *
e.   tclsh releasetest.cl --platform Failure-Detection - all failures detected drh ok  *
f.   nmake /f makefile.msc fulltestonly
0 errors out of 1164043 tests
drh ok  *
g.   nmake /f makefile.msc MEMDEBUG=1 DEBUG=3 fulltestonly
0 errors out of 1186948 tests
drh ok  *
h.   nmake /f makefile.msc WIN32HEAP=1 DEBUG=4 fulltestonly
0 errors out of 1188696 tests - Win8, msvc64
drh ok  *
i.   sh tool/symbols-mingw.sh - no incorrect exports or dependencies drh ok  *
j.   Verify that EXEs and DLLs generated using MSVC contain the correct version number, product name, description, and copyright as resources. mistachkin ok  *
 
11.   Tests for platform Windows (other): drh ok  *
 
a.   th3make msvc.rc test.rc - Windows 7.0/8.x (x64)
0 errors out of 5819691 tests in 2131.717 seconds SQLite 3.8.8 2015-01-15 17:38:35 8f45217cbafef2297cdcec3fd69f4371dfb83922 - Win8, msvc64
drh ok  *
b.   th3make msvc.rc winrt.rc min.rc - Windows Runtime 8.0 (x86)
e693e11d1b9265974c32bddba873ea30a4d0b708, 32-bit little-endian, 0 errors out of 1417192 tests in 642.029 seconds
mistachkin ok  *
c.   th3make msvc.rc winrt.rc min.rc - Windows Runtime 8.0 (ARM)
882181ff9dd75f32db266db6e476671021fc567b, 32-bit little-endian, 0 errors out of 1417196 tests in 4385.354 seconds
mistachkin ok  *
d.   th3make msvc.rc winrt.rc min.rc - Windows Runtime 8.1
8f45217cbafef2297cdcec3fd69f4371dfb83922, 32-bit little-endian, 0 errors out of 1417208 tests in 5798.918 seconds
mistachkin ok  *
e.   th3make msvc.rc wp80.rc min.rc - Windows Phone 8.0
e693e11d1b9265974c32bddba873ea30a4d0b708, 32-bit little-endian, 0 errors out of 1416234 tests in 890.493 seconds
mistachkin ok+  *
f.   th3make msvc.rc wp81.rc min.rc - Windows Phone 8.1
8f45217cbafef2297cdcec3fd69f4371dfb83922, 32-bit little-endian, 0 errors out of 1416242 tests in 3081.442 seconds
mistachkin ok  *
g.   th3make msvc.rc wince.rc min.rc - Windows Embedded Compact 2013 - When tests are going to be run on the [Hyper-V based] emulator, no-mmap.rc must be used as well.
882181ff9dd75f32db266db6e476671021fc567b, 32-bit little-endian, 0 errors out of 1420690 tests in 2966.201 seconds
mistachkin ok  *
 
12.   Tests for platform Android: dan ok  *
 
a.   th3make quick.rc
./th3: 0 errors out of 1491069 tests in 2114.649 seconds; ./th3: SQLite 3.8.8 2015-01-13 21:26:17 882181ff9dd75f32db266db6e476671021fc567b
dan ok  *
 
13.   Tests for platform OpenBSD (x86): drh ok  *
 
a.   make test
0 errors out of 138566 tests - disabled e_walauto.test since it generates database files that are too large for our disk quote on devio.us.
drh ok  *
b.   th3make quick.rc
./th3: 0 errors out of 1416347 tests in 1575.238 seconds ./th3: SQLite 3.8.8 2015-01-13 21:26:17 882181ff9dd75f32db266db6e476671021fc567b
drh ok  *
 
14.   Tests for platform Solaris (SPARC): drh ok  *
 
a.   make test
After fixing the e_walauto.test to work on big-endian systems: 0 errors out of 138764 tests
drh ok  *
b.   tclsh multitest.tcl --only quick
0 failures on 6 th3make runs and 9309335 tests in (03:11:50) SQLite 3.8.8 2015-01-12 21:43:00 e693e11d1b9265974c32bddba873ea30a4d0b708
drh ok  *
c.   Recompile and test Fossil. drh ok  *
d.   Verify that Fossil repositories are cross-platform with x86/x64. drh ok  *
 
15.   Sqllogictest: drh ok  *
 
a.   Checked in latest SQLite amalgamation. drh ok  *
b.   No SQLite compiler warnings. drh ok  *
c.   run-all.sh - no errors
0 errors out of 17819637 tests in 13m23.516s on Bella.
drh ok  *
d.   run-all.bat - no errors drh ok  *
 
16.   Build using the configure/make in main source tree. drh ok  *
 
a.   Make sure that autoconf has been run to update the configure script. drh ok  *
b.   Verify the correct version numbers have been installed. drh ok  *
 
17.   Fossil updated to use the latest SQLite. drh ok  *
 
a.   No SQLite compiler warnings. drh ok  *
b.   Used on active websites with no issues. drh ok  *
 
18.   Firefox recompiled using lastest SQLite. drh ok  *
 
a.   No SQLite compiler warnings. drh ok  *
b.   Active use with no issues noted. drh ok  *
 
19.   CEROD tests in the "test/" subdirectory. drh ok  *
 
20.   SEE tests using TH3: drh ok  *
 
a.   see.c
./th3: 0 errors out of 7615396 tests in 2786.784 seconds ./th3: SQLite 3.8.8 2015-01-13 21:26:17 882181ff9dd75f32db266db6e476671021fc567b
drh ok  *
b.   see-aes128-ofb.c
./th3: 0 errors out of 7642255 tests in 5033.887 seconds ./th3: SQLite 3.8.8 2015-01-13 21:26:17 882181ff9dd75f32db266db6e476671021fc567b
drh ok  *
c.   see-aes256-ofb.c
./th3: 0 errors out of 1462307 tests in 786.566 seconds ./th3: SQLite 3.8.8 2015-01-15 17:38:35 8f45217cbafef2297cdcec3fd69f4371dfb83922
drh ok  *
d.   see-rc4.c
./th3: 0 errors out of 1462383 tests in 719.725 seconds ./th3: SQLite 3.8.8 2015-01-15 17:38:35 8f45217cbafef2297cdcec3fd69f4371dfb83922
drh ok  *
e.   see-aes128-ccm.c
0 errors out of 1479985 tests in 458.952 seconds SQLite 3.8.8 2015-01-15 17:38:35 8f45217cbafef2297cdcec3fd69f4371dfb83922 - Win8
drh ok  *
f.   At least one of the above using "test.rc". drh ok  *
g.   At least one of the above using "memdebug.rc". drh ok  *
h.   At least one of the above on Linux. drh ok  *
i.   At least one of the above on Mac OS X. drh ok  *
j.   At least one of the above on Windows. drh ok  *
 
21.   ZIPVFS tests: drh ok  *
 
a.   testfixture ../zipvfs/test/zipvfs.test (See test/README.txt in the ZIPVFS source tree for details.) dan ok  *
b.   th3make zipvfs.rc test.rc
./th3: 0 errors out of 8045360 tests in 1859.854 seconds ./th3: SQLite 3.8.8 2015-01-13 21:26:17 882181ff9dd75f32db266db6e476671021fc567b - on Bella
drh ok  *
c.   th3make zipvfs.rc memdebug.rc
./th3: 0 errors out of 8072478 tests in 4185.089 seconds ./th3: SQLite 3.8.8 2015-01-15 17:38:35 8f45217cbafef2297cdcec3fd69f4371dfb83922
drh ok  *
d.   th3make zipvfs.rc quick.rc -valgrind
./th3: 0 errors out of 1483388 tests in 10920.341 seconds ./th3: SQLite 3.8.8 2015-01-14 17:16:23 0ba124540b5b2a9ceda0f4f4a46e6be54edad813
drh ok  *
e.   th3make zipvfs.rc quick.rc
0 errors out of 2005050 tests in 527.527 seconds SQLite 3.8.8 2015-01-10 18:22:06 46f3aba2692d74c29ab5c1f24a6daac600fd6af8 - Win8
drh ok  *
f.   At least one of the above on Linux. drh ok  *
g.   At least one of the above on Mac OS X.
(a) ran on OSX
dan ok  *
h.   At least one of the above on Windows. drh ok  *
 
22.   NX-Devkit compiles and runs tclsh th3make test.rc nx_compress.o without error.
./th3: 0 errors out of 6688199 tests in 1175.157 seconds ./th3: SQLite 3.8.8 2015-01-15 17:38:35 8f45217cbafef2297cdcec3fd69f4371dfb8392
drh ok  *
 
23.   Amalgamation autoconf tarball. drh ok  *
 
a.   Builds. drh ok  *
b.   Works on Linux. drh ok  *
c.   Works on Mac OS X. drh ok  *
 
24.   TEA archive builds correctly and runs: drh ok  *
 
a.   Linux drh ok  *
b.   Mac OS X drh ok  *
 
25.   Run performance tests comparing the new SQLite release against the previous release and/or a release from one year ago. Document and justify any performance decrease. drh ok  *
 
a.   The Tcl "speed*.test" scripts.
3.8.8: 4428095 microsec v. 3.8.7.4: 4535175 microsec. Bella.
drh ok  *
b.   The TH3 speed tests.
3.8.8: 2.967 seconds v. 3.8.7.4: 3.180 seconds.
drh ok  *
c.   The "speedtest1" program.
3.8.3: 874,537,409 cycles v. 3.8.7.4: 884,933,246 cycles = 4.4% faster
drh ok  *
d.   ./speedtest1 --nosync --size 25 --trace 2>x.txt
time ./sqlite3 x.db <x.txt >/dev/null
3.8.8: 6,713,758,001 cycles v. 3.8.7.4 6,752,501,793 cycles. Essentially the same speed.
drh ok  *
e.   One or more of the above on Linux. drh ok  *
f.   One or more of the above on Windows.
Difficult to measure a difference in speedtest1 due to random variations between runs.
drh ok  *
g.   One or more of the above on Mac OS X.
Difficult to measure a difference in speedtest1 due to random variations between runs.
drh ok  *
 
26.   Run make wordcount; bash run-wordcount.bash $OPTIONS with options: drh ok  *
 
a.   bash run-wordcount.sh sqlite3.c drh ok  *
b.   bash run-wordcount.sh sqlite3.c --cachesize 5 --nosync drh ok  *
 
27.   Compute the size of a standard build (gcc -Os -c sqlite3.c) and and record the size change in the comments. drh ok  *
 
a.   Versus the previous release.
3.8.7.4: 456728 vs. 3.8.8: 460575.
drh ok  *
b.   Versus the trunk from 12 months ago.
2014-01-14: 440197 vs 3.8.8: 460575.
drh ok  *
 
28.   Verify that the amalgamation builds are byte-for-byte identical on all workstation platforms. drh ok  *
 
a.   Linux
6352cc13976f15543306bf36592ed7806ae206ba sqlite3.c fc80482aa778899607713253d170836e1cdaa250 sqlite3.h
drh ok  *
b.   Mac OS X
6352cc13976f15543306bf36592ed7806ae206ba sqlite3.c fc80482aa778899607713253d170836e1cdaa250 sqlite3.h
drh ok  *
c.   OpenBSD
6352cc13976f15543306bf36592ed7806ae206ba sqlite3.c fc80482aa778899607713253d170836e1cdaa250 sqlite3.h
drh ok  *
d.   Windows using native MinGW.
6352cc13976f15543306bf36592ed7806ae206ba sqlite3.c fc80482aa778899607713253d170836e1cdaa250 sqlite3.h
drh ok  *
e.   Windows using NMAKE.
6352cc13976f15543306bf36592ed7806ae206ba sqlite3.c fc80482aa778899607713253d170836e1cdaa250 sqlite3.h
drh ok  *
f.   Solaris (SPARC) using autoconf.
6352cc13976f15543306bf36592ed7806ae206ba sqlite3.c fc80482aa778899607713253d170836e1cdaa250 sqlite3.h
drh ok  *
 
29.   Verify that databases (including FTS3 and RTREE databases), rollback journals, and WAL files created by the release candidate are readable and writeable by historical versions of SQLite (as long as no unsupported features are used) and vice versa.
Tested with backcompat.test against 3.6.4 and 3.7.3. 0 errors out of 269 tests.
dan ok  *
 
30.   Cross-platform tests. Verify the ability of databases, WAL files, and rollback journals to be copied and used between 32-bit and 64-bit systems and between big-endian and little-endian systems. drh ok  *
 
a.   32-big to 64-little, database. drh ok  *
b.   32-big to 64-little, WAL. drh ok  *
c.   32-big to 64-little, rollback. drh ok  *
d.   64-little to 32-big, SEE database. drh ok  *
e.   64-little to 32-big, ZIPVFS database. drh ok  *
f.   64-little to 32-big, CEROD database. drh ok  *
 
31.   Build and verify correct operation of sqlite3_analyzer on: drh ok  *
 
a.   Linux drh ok  *
b.   Mac OS X drh ok  *
c.   Solaris (SPARC) drh ok  *
d.   Windows (MinGW) drh ok  *
e.   Windows (MSVC)
Win7, msvc32
drh ok  *
f.   A database containing WITHOUT ROWID tables. drh ok  *
 
32.   Tests for the sessions branch with macros SQLITE_ENABLE_SESSION and SQLITE_ENABLE_PREUPDATE_HOOK. drh ok  *
 
a.   tclsh th3make session.rc test.rc (on Windows)
0 errors out of 6013063 tests in 5291.148 seconds SQLite 3.8.8 2015-01-14 17:16:23 0ba124540b5b2a 9ceda0f4f4a46e6be54edad813
drh ok  *
b.   tclsh th3make session.rc test.rc (on Unix)
./th3: 0 errors out of 7646454 tests in 1901.032 seconds ./th3: SQLite 3.8.8 2015-01-14 17:16:23 0ba124540b5b2a9ceda0f4f4a46e6be54edad813
drh ok  *
c.   tclsh th3make session.rc quick.rc -valgrind
./th3: 0 errors out of 1483354 tests in 10915.361 seconds ./th3: SQLite 3.8.8 2015-01-14 17:16:23 0ba124540b5b2a9ceda0f4f4a46e6be54edad813
drh ok  *
d.   make test (on Windows)
o errors out of 138936 tests - Win7.
drh ok  *
e.   make test (on Unix) drh ok  *
f.   testfixture test/session.test
0 errors out of 47951 tests
drh ok  *
 
33.   Verify that the "sqlite3-all.c" build target works and that the resulting "sqlite3-all.c" file and its include files ("sqlite3-?.c") compile and run the same as the single-file amalgamation. drh ok  *
 
34.   System.Data.SQLite builds and checks out using the SQLite core.
882181ff9dd75f32db266db6e476671021fc567b, Debug NetFx40 x86: 0 errors/400 tests, 639 seconds, Release NetFx40 x86: 0 errors/400 tests, 612 seconds, Debug NetFx40 x64: 0 errors/400 tests, 822 seconds, Release NetFx40 x64: 0 errors/400 tests, 800 seconds, 0 errors/23 tests (Debug NetCF20-ARM/NetCF35-ARM), 0 errors/23 tests (Release NetCF20-ARM/NetCF35-ARM)
mistachkin ok  *