1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
3
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
4
<title>Recent SQLite News</title>
5
<style type="text/css">
8
font-family: Verdana, sans-serif;
13
a:visited { color: #734559 }
15
.logo { position:absolute; margin:3px; }
31
.toolbar a { color: white; text-decoration: none; padding: 6px 12px; }
32
.toolbar a:visited { color: white; }
33
.toolbar a:hover { color: #044a64; background: white; }
35
.content { margin: 5%; }
36
.content dt { font-weight:bold; }
37
.content dd { margin-bottom: 25px; margin-left:20%; }
38
.content ul { padding:0px; padding-left: 15px; margin:0px; }
41
.se { background: url(images/se.gif) 100% 100% no-repeat #044a64}
42
.sw { background: url(images/sw.gif) 0% 100% no-repeat }
43
.ne { background: url(images/ne.gif) 100% 0% no-repeat }
44
.nw { background: url(images/nw.gif) 0% 0% no-repeat }
46
/* Things for "fancyformat" documents start here. */
47
.fancy img+p {font-style:italic}
48
.fancy .codeblock i { color: darkblue; }
49
.fancy h1,.fancy h2,.fancy h3,.fancy h4 {font-weight:normal;color:#044a64}
50
.fancy h2 { margin-left: 10px }
51
.fancy h3 { margin-left: 20px }
52
.fancy h4 { margin-left: 30px }
53
.fancy th {white-space:nowrap;text-align:left;border-bottom:solid 1px #444}
54
.fancy th, .fancy td {padding: 0.2em 1ex; vertical-align:top}
55
.fancy #toc a { color: darkblue ; text-decoration: none }
56
.fancy .todo { color: #AA3333 ; font-style : italic }
57
.fancy .todo:before { content: 'TODO:' }
58
.fancy p.todo { border: solid #AA3333 1px; padding: 1ex }
59
.fancy img { display:block; }
60
.fancy :link:hover, .fancy :visited:hover { background: wheat }
61
.fancy p,.fancy ul,.fancy ol { margin: 1em 5ex }
62
.fancy li p { margin: 1em 0 }
63
/* End of "fancyformat" specific rules. */
69
<div><!-- container div to satisfy validator -->
72
<img class="logo" src="images/sqlite370_banner.gif" alt="SQLite Logo"
74
<div><!-- IE hack to prevent disappearing logo--></div>
75
<div class="tagline">Small. Fast. Reliable.<br>Choose any three.</div>
77
<table width=100% style="clear:both"><tr><td>
78
<div class="se"><div class="sw"><div class="ne"><div class="nw">
79
<table width=100% style="padding:0;margin:0;cell-spacing:0"><tr>
82
<a href="about.html">About</a>
83
<a href="sitemap.html">Sitemap</a>
84
<a href="docs.html">Documentation</a>
85
<a href="download.html">Download</a>
86
<a href="copyright.html">License</a>
87
<a href="news.html">News</a>
88
<a href="support.html">Support</a>
91
gMsg = "Search SQLite Docs..."
92
function entersearch() {
93
var q = document.getElementById("q");
94
if( q.value == gMsg ) { q.value = "" }
95
q.style.color = "black"
96
q.style.fontStyle = "normal"
98
function leavesearch() {
99
var q = document.getElementById("q");
100
if( q.value == "" ) {
102
q.style.color = "#044a64"
103
q.style.fontStyle = "italic"
108
<div style="padding:0 1em 0px 0;white-space:nowrap">
109
<form name=f method="GET" action="http://www.sqlite.org/search">
110
<input id=q name=q type=text
111
onfocus="entersearch()" onblur="leavesearch()" style="width:24ex;padding:1px 1ex; border:solid white 1px; font-size:0.9em ; font-style:italic;color:#044a64;" value="Search SQLite Docs...">
112
<input type=submit value="Go" style="border:solid white 1px;background-color:#044a64;color:white;font-size:0.9em;padding:0 1ex">
116
</div></div></div></div>
118
<div class=startsearch></div>
124
<a name="2012_june_11"></a><h3>2012-June-11 - Release 3.7.13</h3><blockquote>
125
SQLite <a href="releaselog/3_7_13.html">version 3.7.13</a> adds support for WinRT and metro style
126
applications for Microsoft Windows 8. The 3.7.13 release is
127
coming sooner than is usual after the previous release in order to get
128
this new capability into the hands of developers. To use SQLite in
129
a metro style application, compile with the -DSQLITE_OS_WINRT flag.
130
Because of the increased application security and safety requirements
131
of WinRT, all database
132
filenames should be full pathnames. Note that SQLite is not capable
133
of accessing databases outside the installation directory of the
134
application. This restriction is another security and safety feature
135
of WinRT. Apart from these restrictions, SQLite should work exactly
136
the same on WinRT as it does on every other system.</p>
138
<p> Also in this release: when a database is opened using <a href="uri.html">URI filenames</a>
139
and the <a href="uri.html#coreqp">mode=memory</a> query parameter
140
then the database is an in-memory database, just as if it had
141
been named ":memory:". But, if shared cache mode is enabled, then
142
all other database connections that specify the same URI filename
143
will connect to the same in-memory database. This allows two or more
144
database connections (in the same process) to share the same in-memory
147
<p> This release also includes some corner-case performance optimizations
148
that are obscure yet significant to an important subset of SQLite users.
149
Getting these performance optimizations into circulation quickly is
150
yet another reason for making this release so soon following the previous.</p>
152
<p> The next release of SQLite is scheduled to occur after the usual
153
2 or 3 month interval.
154
</blockquote><hr width="50%"><a name="2012_may_22"></a><h3>2012-May-22 - Patch Release 3.7.12.1</h3><blockquote>
155
SQLite <a href="releaselog/3_7_12_1.html">version 3.7.12.1</a> is a patch release for <a href="releaselog/3_7_12.html">version 3.7.12</a> that
156
fixes a <a href="http://www.sqlite.org/src/info/c2ad16f997ee9c">bug</a> that was
157
introduced in version 3.7.12 and that can
158
cause a segfault for certain obscure nested aggregate queries.
159
There are very few changes in 3.7.12.1, and upgrading is only needed for
160
applications that do nested aggregate queries.
161
</blockquote><hr width="50%"><a name="2012_may_14"></a><h3>2012-May-14 - <a href="releaselog/3_7_12.html">Version 3.7.12</a></h3><blockquote>
162
SQLite <a href="releaselog/3_7_12.html">version 3.7.12</a> is a regularly scheduled maintenance release.
163
This release contains several new optimizations and bug fixes and upgrading
164
is recommended. See the <a href="releaselog/3_7_12.html">change summary</a> for details.
165
</blockquote><hr width="50%"><a name="2012_march_20"></a><h3>2012-March-20 - <a href="releaselog/3_7_11.html">Version 3.7.11</a></h3><blockquote>
166
SQLite <a href="releaselog/3_7_11.html">version 3.7.11</a> is a regularly scheduled maintenance release
167
which was rushed out early due to a
168
<a href="http://www.sqlite.org/src/info/b7c8682cc1">bug in the query optimizer</a>
169
introduced in the previous release. The bug is obscure - it changes
170
a LEFT JOIN into an INNER JOIN in some cases when there is a 3-way join
171
and OR terms in the WHERE clause. But it was considered serious enough to
172
rush out a fix. Apart from this one problem, SQLite <a href="releaselog/3_7_10.html">version 3.7.10</a> has
173
not given any trouble. Upgrading to <a href="releaselog/3_7_11.html">version 3.7.11</a> from versions
174
3.7.6.3, 3.7.7, 3.7.7.1, 3.7.8, or 3.7.9 is
175
optional. Upgrading from other releases, including the previous release
176
3.7.10, is recommended.</p>
178
<p> Other enhancements found in this release are enumerated in the
179
<a href="releaselog/3_7_11.html">change log</a>.
180
</blockquote><hr width="50%"><a name="2012_january_16"></a><h3>2012-January-16 - <a href="releaselog/3_7_10.html">Version 3.7.10</a></h3><blockquote>
181
SQLite <a href="releaselog/3_7_10.html">version 3.7.10</a> is a regularly scheduled maintenance release.
182
Upgrading from version 3.7.6.3, 3.7.7, 3.7.7.1, 3.7.8, or 3.7.9 is
183
optional. Upgrading from other releases is recommended.</p>
185
<p> The <a href="c3ref/c_config_getmalloc.html#sqliteconfigpcache">SQLITE_CONFIG_PCACHE</a> mechanism has been replaced with
186
<a href="c3ref/c_config_getmalloc.html#sqliteconfigpcache2">SQLITE_CONFIG_PCACHE2</a>. If you do not know what this mechanism
187
is (it is an extreme corner-case and is seldom used) then this
188
change will not effect you in the least.</p>
190
<p> The default <a href="fileformat2.html#schemaformat">schema format number</a> for new database files has changed
191
from 1 to 4. SQLite has been able to generate and read database files
192
using schema format 4 for six years. But up unto now, the default
193
schema format has been 1 so that older versions of SQLite could read
194
and write databases generated by newer versions of SQLite. But those
195
older versions of SQLite have become so scarce now that it seems
196
reasonable to make the new format the default.</p>
198
<p> SQLite is changing some of the assumptions it makes above the behavior
199
of disk drives and flash memory devices during a sudden power loss.
200
This change is completely transparent to applications.
201
Read about the <a href="psow.html">powersafe overwrite</a> property for additional information.</p>
203
<p> Lots of new interfaces have been added in this release:
205
<li> <a href="c3ref/db_release_memory.html">sqlite3_db_release_memory()</a>
206
<li> <a href="pragma.html#pragma_shrink_memory">PRAGMA shrink_memory</a>
207
<li> <a href="c3ref/db_filename.html">sqlite3_db_filename()</a>
208
<li> <a href="c3ref/stmt_busy.html">sqlite3_stmt_busy()</a>
209
<li> <a href="c3ref/uri_boolean.html">sqlite3_uri_boolean()</a>
210
<li> <a href="c3ref/uri_boolean.html">sqlite3_uri_int64()</a>
213
<p> The <a href="pragma.html#pragma_cache_size">PRAGMA cache_size</a> statement has been enhanced. Formerly, you would
214
use this statement to tell SQLite how many pages of the database files it
215
should hold in its cache at once. The total memory requirement would
216
depend on the database page size. Now, if you give <a href="pragma.html#pragma_cache_size">PRAGMA cache_size</a>
217
a negative value -N, it will allocate roughly N
218
<a href="http://en.wikipedia.org/wiki/Kibibyte">kibibytes</a> of memory to cache,
219
divided up according to page size. This enhancement allows programs to
220
more easily control their memory usage.</p>
222
<p> There have been several obscure bug fixes. One noteworthy bug,
223
ticket <a href="http://www.sqlite.org/src/info/ff5be73dee">ff5be73dee</a>,
224
could in theory result in a corrupt database file if a power loss
225
occurred at just the wrong moment on an unusually cantankerous disk
226
drive. But that is mostly a theoretical concern and is very unlikely
227
to happen in practice. The bug was found during laboratory testing
228
and has never been observed to occur in the wild.
229
</blockquote><hr width="50%"><a name="2011_november_01"></a><h3>2011-November-01 - <a href="releaselog/3_7_9.html">Version 3.7.9</a></h3><blockquote>
230
SQLite <a href="releaselog/3_7_9.html">version 3.7.9</a> is a regularly scheduled maintenance release.
231
Upgrading from version 3.7.6.3, 3.7.7, 3.7.7.1, and 3.7.8 is optional.
232
Upgrading from other versions is recommended.</p>
234
<p> The <a href="compile.html#enable_stat2">SQLITE_ENABLE_STAT2</a> compile-time option is now a no-op. The enhanced
235
query-planner functionality formerly available using SQLITE_ENABLE_STAT2
236
is now available through <a href="compile.html#enable_stat3">SQLITE_ENABLE_STAT3</a>. The enhanced query planning
237
is still disabled by default. However, future releases of SQLite might
238
convert STAT3 from an enable-option to a disable-option so that it is
239
available by default and is only omitted upon request.</p>
241
<p> The <a href="fts3.html#fts4">FTS4</a> full-text search engine has been enhanced such that tokens in
242
the search string that begin with "^" must be the first token in their
243
respective columns in order to match. Formerly, "^" characters in the
244
search string were simply ignored. Hence, if a legacy application was
245
including "^" characters in FTS4 search strings, thinking that they would
246
always be ignored, then those legacy applications might break with this
247
update. The fix is simply remove the "^" characters from the search
250
<p> See the <a href="releaselog/3_7_9.html">change summary</a> for additional changes associated
252
</blockquote><hr width="50%"><a name="2011_september_19"></a><h3>2011-September-19 - <a href="releaselog/3_7_8.html">Version 3.7.8</a></h3><blockquote>
253
SQLite <a href="releaselog/3_7_8.html">version 3.7.8</a> is a quarterly maintenance release. Upgrading from
254
versions 3.7.6.3, 3.7.7, or 3.7.7.1 is optional. Upgrading from other
255
versions is recommended.</p>
257
<p> This release features a new "external merge sort" algorithm used to
258
implement ORDER BY and GROUP BY and also to presort the content of an
259
index for CREATE INDEX. The new algorithm does approximately the same
260
number of comparisons and I/Os as before, but the I/Os are much more
261
sequential and so runtimes are greatly reduced when the size of the
262
set being sorted is larger than the filesystem cache. The performance
263
improvement can be dramatic - orders of magnitude faster
264
for large CREATE INDEX commands. On the other hand,
265
the code is slightly slower (1% or 2%)
266
for a small CREATE INDEX. Since CREATE INDEX is not an
267
operation that commonly occurs on a speed-critical path, we feel that
268
this tradeoff is a good one. The slight slowdown for small CREATE INDEX
269
statements might be recovered in a future release. ORDER BY and GROUP BY
270
operations should now be faster for all cases, large and small.</p>
272
<p> The query planner has been enhanced to do a better job of handling
273
the DISTINCT keyword on SELECT statements.</p>
275
<p> There has been a lot of work on the default <a href="vfs.html">VFSes</a>. The unix VFS has
276
been enhanced to include more overrideable system calls - a feature requested
277
by Chromium to make it easier to build SQLite into a sandbox. The
278
windows VFS has been enhanced to be more resistant to interference from
279
anti-virus software.</p>
281
<p> Every version of SQLite is better tested than the previous, and 3.7.8
282
is no exception to this rule. Version 3.7.8 has been used internally by
283
the SQLite team for mission critical functions and has performed flawlessly.
284
And, of course, it passes our rigorous <a href="testing.html">testing</a> procedures with no
285
problems detected. Version 3.7.8 is recommended for all new development.
286
</blockquote><hr width="50%">
288
<a href="oldnews.html">Old news...</a>