164 lines
8.1 KiB
HTML
164 lines
8.1 KiB
HTML
<!DOCTYPE html>
|
|
<html><head>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
|
<link href="../sqlite.css" rel="stylesheet">
|
|
<title>SQLite Release 3.12.0 On 2016-03-29</title>
|
|
<!-- path=../ -->
|
|
</head>
|
|
<body>
|
|
<div class=nosearch>
|
|
<a href="../index.html">
|
|
<img class="logo" src="../images/sqlite370_banner.gif" alt="SQLite" border="0">
|
|
</a>
|
|
<div><!-- IE hack to prevent disappearing logo --></div>
|
|
<div class="tagline desktoponly">
|
|
Small. Fast. Reliable.<br>Choose any three.
|
|
</div>
|
|
<div class="menu mainmenu">
|
|
<ul>
|
|
<li><a href="../index.html">Home</a>
|
|
<li class='mobileonly'><a href="javascript:void(0)" onclick='toggle_div("submenu")'>Menu</a>
|
|
<li class='wideonly'><a href='../about.html'>About</a>
|
|
<li class='desktoponly'><a href="../docs.html">Documentation</a>
|
|
<li class='desktoponly'><a href="../download.html">Download</a>
|
|
<li class='wideonly'><a href='../copyright.html'>License</a>
|
|
<li class='desktoponly'><a href="../support.html">Support</a>
|
|
<li class='desktoponly'><a href="../prosupport.html">Purchase</a>
|
|
<li class='search' id='search_menubutton'>
|
|
<a href="javascript:void(0)" onclick='toggle_search()'>Search</a>
|
|
</ul>
|
|
</div>
|
|
<div class="menu submenu" id="submenu">
|
|
<ul>
|
|
<li><a href='../about.html'>About</a>
|
|
<li><a href='../docs.html'>Documentation</a>
|
|
<li><a href='../download.html'>Download</a>
|
|
<li><a href='../support.html'>Support</a>
|
|
<li><a href='../prosupport.html'>Purchase</a>
|
|
</ul>
|
|
</div>
|
|
<div class="searchmenu" id="searchmenu">
|
|
<form method="GET" action="../search">
|
|
<select name="s" id="searchtype">
|
|
<option value="d">Search Documentation</option>
|
|
<option value="c">Search Changelog</option>
|
|
</select>
|
|
<input type="text" name="q" id="searchbox" value="">
|
|
<input type="submit" value="Go">
|
|
</form>
|
|
</div>
|
|
</div>
|
|
<script>
|
|
function toggle_div(nm) {
|
|
var w = document.getElementById(nm);
|
|
if( w.style.display=="block" ){
|
|
w.style.display = "none";
|
|
}else{
|
|
w.style.display = "block";
|
|
}
|
|
}
|
|
function toggle_search() {
|
|
var w = document.getElementById("searchmenu");
|
|
if( w.style.display=="block" ){
|
|
w.style.display = "none";
|
|
} else {
|
|
w.style.display = "block";
|
|
setTimeout(function(){
|
|
document.getElementById("searchbox").focus()
|
|
}, 30);
|
|
}
|
|
}
|
|
function div_off(nm){document.getElementById(nm).style.display="none";}
|
|
window.onbeforeunload = function(e){div_off("submenu");}
|
|
/* Disable the Search feature if we are not operating from CGI, since */
|
|
/* Search is accomplished using CGI and will not work without it. */
|
|
if( !location.origin || !location.origin.match || !location.origin.match(/http/) ){
|
|
document.getElementById("search_menubutton").style.display = "none";
|
|
}
|
|
/* Used by the Hide/Show button beside syntax diagrams, to toggle the */
|
|
function hideorshow(btn,obj){
|
|
var x = document.getElementById(obj);
|
|
var b = document.getElementById(btn);
|
|
if( x.style.display!='none' ){
|
|
x.style.display = 'none';
|
|
b.innerHTML='show';
|
|
}else{
|
|
x.style.display = '';
|
|
b.innerHTML='hide';
|
|
}
|
|
return false;
|
|
}
|
|
</script>
|
|
</div>
|
|
<h2>SQLite Release 3.12.0 On 2016-03-29</h2><p><ol class='lessindent'>
|
|
<p><b>Potentially Disruptive Change:</b>
|
|
<li>The <a href="../compile.html#default_page_size">SQLITE_DEFAULT_PAGE_SIZE</a> is increased from 1024 to 4096.
|
|
The <a href="../compile.html#default_cache_size">SQLITE_DEFAULT_CACHE_SIZE</a> is changed from 2000 to -2000 so
|
|
the same amount of cache memory is used by default.
|
|
See the application note on the
|
|
<a href="../pgszchng2016.html">version 3.12.0 page size change</a> for further information.
|
|
<p><b>Performance enhancements:</b>
|
|
<li>Enhancements to the <a href="../lemon.html">Lemon parser generator</a>
|
|
so that it creates a smaller and faster SQL parser.
|
|
<li>Only create <font color="red">master journal</font> files if two or more attached databases are all
|
|
modified, do not have <a href="../pragma.html#pragma_synchronous">PRAGMA synchronous</a> set to OFF, and
|
|
do not have the <a href="../pragma.html#pragma_journal_mode">journal_mode</a> set to OFF, MEMORY, or WAL.
|
|
<li>Only create <a href="../tempfiles.html#stmtjrnl">statement journal</a> files when their size exceeds a threshold.
|
|
Otherwise the journal is held in memory and no I/O occurs. The threshold
|
|
can be configured at compile-time using <a href="../compile.html#stmtjrnl_spill">SQLITE_STMTJRNL_SPILL</a> or at
|
|
start-time using <a href="../c3ref/config.html">sqlite3_config</a>(<a href="../c3ref/c_config_covering_index_scan.html#sqliteconfigstmtjrnlspill">SQLITE_CONFIG_STMTJRNL_SPILL</a>).
|
|
<li>The query planner is able to optimize IN operators on <a href="../vtab.html">virtual tables</a>
|
|
even if the <a href="../vtab.html#xbestindex">xBestIndex</a> method does not set the
|
|
sqlite3_index_constraint_usage.omit flag of the
|
|
virtual table column to the left of the IN operator.
|
|
<li>The query planner now does a better job of optimizing <a href="../vtab.html">virtual table</a>
|
|
accesses in a 3-way or higher join where constraints on the virtual
|
|
table are split across two or more other tables of the join.
|
|
<li>More efficient handling of <a href="../appfunc.html">application-defined SQL functions</a>, especially
|
|
in cases where the application defines hundreds or thousands of
|
|
custom functions.
|
|
<li>The query planner considers the LIMIT clause when estimating the cost
|
|
of ORDER BY.
|
|
<li>The configure script (on unix) automatically detects
|
|
pread() and pwrite() and sets compile-time options to use those OS
|
|
interfaces if they are available.
|
|
<li>Reduce the amount of memory needed to hold the schema.
|
|
<li>Other miscellaneous micro-optimizations for improved performance and reduced
|
|
memory usage.
|
|
<p><b>New Features:</b>
|
|
<li>Added the <a href="../c3ref/c_dbconfig_defensive.html#sqlitedbconfigenablefts3tokenizer">SQLITE_DBCONFIG_ENABLE_FTS3_TOKENIZER</a> option to <a href="../c3ref/db_config.html">sqlite3_db_config()</a>
|
|
which allows the two-argument version of the <a href="../fts3.html#f3tknzr">fts3_tokenizer()</a> SQL function to
|
|
be enabled or disabled at run-time.
|
|
<li>Added the <a href="https://www.sqlite.org/src/artifact/d7cc99350?ln=403-443">sqlite3rbu_bp_progress()</a>
|
|
interface to the <a href="../rbu.html">RBU</a> extension.
|
|
<li>The <a href="../pragma.html#pragma_defer_foreign_keys">PRAGMA defer_foreign_keys=ON</a> statement now also disables
|
|
<a href="../foreignkeys.html#fk_actions">RESTRICT actions</a> on foreign key.
|
|
<li>Added the <a href="../c3ref/system_errno.html">sqlite3_system_errno()</a> interface.
|
|
<li>Added the <a href="../compile.html#default_synchronous">SQLITE_DEFAULT_SYNCHRONOUS</a> and <a href="../compile.html#default_wal_synchronous">SQLITE_DEFAULT_WAL_SYNCHRONOUS</a>
|
|
compile-time options. The <a href="../compile.html#default_synchronous">SQLITE_DEFAULT_SYNCHRONOUS</a> compile-time option
|
|
replaces the <a href="../compile.html#extra_durable">SQLITE_EXTRA_DURABLE</a> option, which is no longer supported.
|
|
<li>Enhanced the ".stats" command in the <a href="../cli.html">command-line shell</a> to show more
|
|
information about I/O performance obtained from /proc, when available.
|
|
<p><b>Bug fixes:</b>
|
|
<li>Make sure the <a href="../c3ref/get_auxdata.html">sqlite3_set_auxdata()</a> values from multiple triggers
|
|
within a single statement do not interfere with one another.
|
|
Ticket <a href="https://www.sqlite.org/src/info/dc9b1c91">dc9b1c91</a>.
|
|
<li>Fix the code generator for expressions of the form "x IN (SELECT...)" where
|
|
the SELECT statement on the RHS is a correlated subquery.
|
|
Ticket <a href="https://www.sqlite.org/src/info/5e3c886796e5512e">5e3c886796e5512e</a>.
|
|
<li>Fix a harmless TSAN warning associated with the <a href="../c3ref/db_readonly.html">sqlite3_db_readonly()</a> interface.
|
|
<p><b>Hashes:</b>
|
|
<li>SQLITE_SOURCE_ID: "2016-03-29 10:14:15 e9bb4cf40f4971974a74468ef922bdee481c988b"
|
|
<li>SHA1 for sqlite3.c: cba2be96d27cb51978cd4a200397a4ad178986eb
|
|
|
|
</ol></p>
|
|
|
|
<p>A <a href="../changes.html">complete list of SQLite releases</a>
|
|
in a single page and a <a href="../chronology.html">chronology</a> are both also available.
|
|
A detailed history of every
|
|
check-in is available at
|
|
<a href="http://www.sqlite.org/src/timeline">
|
|
SQLite version control site</a>.</p>
|
|
|