Added the --new option to the ".open" dot-command, causing
any prior content in the database to be purged prior to
opening.
Enhance the fts5vocab virtual table to handle "ORDER BY term" efficiently.
Miscellaneous micro-optimizations reduce CPU usage by more than 7%
on common workloads. Most optimization in this release has been on the
front-end (sqlite3_prepare_v2()).
Bug Fixes:
The multiply operator now correctly detects 64-bit integer overflow
and promotes to floating point in all corner-cases. Fix for ticket
1ec41379c9c1e400.
Correct handling of columns with redundant unique indexes when those
columns are used on the LHS of an IN operator. Fix for ticket
0eab1ac759.
Ensure that the AUTOINCREMENT counters in the sqlite_sequence
table are initialized doing "Xfer Optimization" on "INSERT ... SELECT"
statements. Fix for ticket
7b3328086a5c116c.
Make sure the ORDER BY LIMIT optimization
(from check-in 559733b09e)
works with IN operators on INTEGER PRIMARY KEYs. Fix for ticket
96c1454c
Fix the VACUUM command so that it spills excess content to disk rather
than holding everything in memory, and possible causing an out-of-memory
error for larger database files. This fixes an issue introduced by
version 3.15.0.
Fix a case (present since 3.8.0 - 2013-08-26)
where OR-connected terms in the ON clause of a LEFT JOIN
might cause incorrect results. Ticket
34a579141b2c5ac.
Fix a case where the use of row values in the ON clause of a LEFT JOIN
might cause incorrect results. Ticket
fef4bb4bd9185ec8f.
Changes in this specific patch release, version 3.15.2 (2016-11-28):
Multiple bug fixes to the row value logic that was introduced in version 3.15.0.
Fix a NULL pointer dereference in ATTACH/DETACH following a maliciously constructed
syntax error. Ticket
2f1b168ab4d4844.
Fix a crash that can occur following an out-of-memory condition
in the built-in instr() function.
In the JSON extension, fix the JSON validator so that it correctly rejects
invalid backslash escapes within strings.