Subject: CVS commit: pkgsrc
From: Adam Ciarcinski
Date: 2019-02-11 11:45:21
Message id:

Log Message:
sqlite3: updated to 3.27.1

SQLite Release 3.27.1:
Fix a bug in the query optimizer: an adverse interaction between the OR \ 
optimization and the optimization that tries to use values read directly from an \ 
expression index instead of recomputing the expression.

Changes carried forward from version 3.27.0:
Added the VACUUM INTO command
Issue an SQLITE_WARNING message on the error log if a double-quoted string \ 
literal is used.
The sqlite3_normalized_sql() interface works on any prepared statement created \ 
using sqlite3_prepare_v2() or sqlite3_prepare_v3(). It is no longer necessary to \ 
use sqlite3_prepare_v3() with SQLITE_PREPARE_NORMALIZE in order to use \ 
Added the remove_diacritics=2 option to FTS3 and FTS5.
Added the SQLITE_PREPARE_NO_VTAB option to sqlite3_prepare_v3(). Use that option \ 
to prevent circular references to shadow tables from causing resource leaks.
Enhancements to the sqlite3_deserialize() interface:
Add the SQLITE_FCNTL_SIZE_LIMIT file-control for setting an upper bound on the \ 
size of the in-memory database created by sqlite3_deserialize. The default upper \ 
bound is 1GiB, or whatever alternative value is specified by \ 
Honor the SQLITE_DESERIALIZE_READONLY flag, which was previously described in \ 
the documentation, but was previously a no-op.
Enhance the "deserialize" command of the TCL Interface to give it new \ 
"--maxsize N" and "--readonly BOOLEAN" options.
Enhancements to the CLI, mostly to support testing and debugging of the SQLite \ 
library itself:
Add support for ".open --hexdb". The "dbtotxt" utility \ 
program used to generate the text for the "hexdb" is added to the \ 
source tree.
Add support for the "--maxsize N" option on ".open \ 
Add the "--memtrace" command-line option, to show all memory \ 
allocations and deallocations.
Add the ".eqp trace" option on builds with SQLITE_DEBUG, to enable \ 
bytecode program listing with indentation and PRAGMA vdbe_trace all in one step.
Add the ".progress" command for accessing the \ 
sqlite3_progress_handler() interface.
Add the "--async" option to the ".backup" command.
Add options "--expanded", "--normalized", \ 
"--plain", "--profile", "--row", \ 
"--stmt", and "--close" to the ".trace" command.
Increased robustness against malicious SQL that is run against a maliciously \ 
corrupted database.

Bug fixes:
Do not use a partial index to do a table scan on an IN operator.
Fix the query flattener so that it works on queries that contain subqueries that \ 
use window functions.
Ensure that ALTER TABLE modifies table and column names embedded in WITH clauses \ 
that are part of views and triggers.
Fix a parser bug that prevented the use of parentheses around table-valued functions.
Fix a problem with the OR optimization on indexes on expressions.
Fix a problem with the LEFT JOIN strength reduction optimization in which the \ 
optimization was being applied inappropriately due to an IS NOT NULL operator.
Fix the REPLACE command so that it is no longer able to sneak a NULL value into \ 
a NOT NULL column even if the NOT NULL column has a default value of NULL.
Fix a problem with the use of window functions used within correlated subqueries.
Fix the ALTER TABLE RENAME COLUMN command so that it works for tables that have \ 
redundant UNIQUE constraints.
Fix a bug that caused zeroblob values to be truncated when inserted into a table \ 
that uses an expression index.