Small. Fast. Reliable.
Choose any three.
Search for:

## SQLite Release 3.16.0 On 2017-01-02

- Uses 9% fewer CPU cycles. (See the CPU performance measurement report for details on how this performance increase was computed.)
- Added experimental support for PRAGMA functions.
- Added the SQLITE_DBCONFIG_NO_CKPT_ON_CLOSE option to sqlite3_db_config().
- Enhance the date and time functions so that the 'unixepoch' modifier works for the full span of supported dates.
- Changed the default configuration of the lookaside memory allocator from 500 slots of 128 bytes each into 125 slots of 512 bytes each.
- Enhanced "WHERE x NOT NULL" partial indexes so that they are usable if the "x" column appears in a LIKE or GLOB operator.
- Enhanced sqlite3_interrupt() so that it interrupts checkpoint operations that are in process.
- Enhanced the LIKE and GLOB matching algorithm to be faster for cases when the pattern contains multiple wildcards.
- Added the SQLITE_FCNTL_WIN32_GET_HANDLE file control opcode.
- Added ".mode quote" to the command-line shell.
- Added ".lint fkey-indexes" to the command-line shell.
- Added the .imposter dot-command to the command-line shell.
- Added the remember(V,PTR) SQL function as a loadable extension.
- Rename the SQLITE_OMIT_BUILTIN_TEST compile-time option to SQLITE_UNTESTABLE to better reflect the implications of using it.

  Bug Fixes:

- Fix a long-standing bug in the query planner that caused incorrect results on a LEFT JOIN where the left-hand table is a subquery and the join constraint is a bare column name coming from the left-hand subquery. Ticket 2df0107b.
- Correctly handle the integer literal -0x8000000000000000 in the query planner.

  Hashes:

- SQLITE_SOURCE_ID: "2017-01-02 11:57:58 04ac0b75b1716541b2b97704f4809cb7ef19cccf"
- SHA1 for sqlite3.c: e2920fb885569d14197c9b7958e6f1db573ee669

A complete list of SQLite releases in a single page and a chronology are both also available. A detailed history of every check-in is available at SQLite version control site.