sqlite/ext/repair
drh 11a9ad5669 Fix harmless static analyzer warnings in sessions, rtree, fts3 and fts5.
Add the -DSQLITE_OMIT_AUXILIARY_SAFETY_CHECKS compile-time option to cause
ALWAYS() and NEVER() macros to be omitted from the build.

FossilOrigin-Name: 1c67f957fc77e37ce8f0d447c41ca975e8e79a35d332739c24a633649b5b0387
2021-10-04 18:21:14 +00:00
..
test Add the SQLITE_DEFAULT_DEFENSIVE compile-time option. Fix up test cases 2018-11-07 02:17:01 +00:00
checkfreelist.c Fix harmless static analyzer warnings in sessions, rtree, fts3 and fts5. 2021-10-04 18:21:14 +00:00
checkindex.c Extend the refactoring into extensions. Clean up stray newlines. 2020-06-19 15:24:12 +00:00
README.md Create the new ext/repair folder and move checkfreelist.c there. Remove 2017-10-12 19:50:28 +00:00
sqlite3_checker.c.in Make sure the JSON1 extension is available to sqlite3_checker.exe 2017-11-01 19:50:11 +00:00
sqlite3_checker.tcl In sqlite3_checker, wrap the call to "SELECT checkfreelist()" in a 2018-03-02 20:00:42 +00:00

This folder contains extensions and utility programs intended to analyze live database files, detect problems, and possibly fix them.

As SQLite is being used on larger and larger databases, database sizes are growing into the terabyte range. At that size, hardware malfunctions and/or cosmic rays will occasionally corrupt a database file. Detecting problems and fixing errors a terabyte-sized databases can take hours or days, and it is undesirable to take applications that depend on the databases off-line for such a long time. The utilities in the folder are intended to provide mechanisms for detecting and fixing problems in large databases while those databases are in active use.

The utilities and extensions in this folder are experimental and under active development at the time of this writing (2017-10-12). If and when they stabilize, this README will be updated to reflect that fact.