Documentation Source Text

Check-in [13a0452762]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Update change logs and news for the 3.7.15 release. Update the "footprint" according to the larger executables generated by recent GCCs.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 13a045276228b528fd23c897b63c85a79c0b61df
User & Date: drh 2012-12-11 18:46:29.876
Context
2012-12-11
19:11
Documentation typos fixed. (check-in: 5d8312cd94 user: drh tags: trunk)
18:46
Update change logs and news for the 3.7.15 release. Update the "footprint" according to the larger executables generated by recent GCCs. (check-in: 13a0452762 user: drh tags: trunk)
2012-12-07
03:18
Maximum database size is about 140 terabytes. Correct text that formerly reported 14 TB. (check-in: 9c49481d93 user: drh tags: trunk)
Changes
Unified Diff Ignore Whitespace Patch
Changes to pages/changes.in.
67
68
69
70
71
72
73
74
75
76
77
78
79
80


81
82
83
84
85
86
87
<li>Added the [instr()] SQL function.
<li>Added the [SQLITE_FCNTL_BUSYHANDLER] file control, used to allow VFS
    implementations to get access to the busy handler callback.
<li>The xDelete method in the built-in [VFS | VFSes] now return
    SQLITE_IOERR_DELETE_NOENT if the file to be deleted does not exist.
<li>Enhanced support for QNX.
<li>Work around an optimizer bug in the MSVC compiler when targeting ARM.
<li>Fix various concurrency problems in shared-cache mode.
<li>Bug fix: Avoid a deadlock or crash if the [backup API], [shared cache],
    and the SQLite Encryption Extension are all used at once.
<li>Bug fix: SQL functions created using the TCL interface honor the
    "nullvalue" setting.
<li>Bug fix: Fix a 32-bit overflow problem on CREATE INDEX for databases
    larger than 16GB.


}

chng {2012-10-04 (3.7.14.1)} {
<li>Fix a bug (ticket 
<a href="www.sqlite.org/src/tktview/d02e1406a58ea02d">&#91;d02e1406a58ea02d]&#93;</a>)
that causes a segfault on a LEFT JOIN that includes an OR in the ON clause.
<li>Work around a bug in the optimizer in the VisualStudio-2012 compiler that







|






>
>







67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
<li>Added the [instr()] SQL function.
<li>Added the [SQLITE_FCNTL_BUSYHANDLER] file control, used to allow VFS
    implementations to get access to the busy handler callback.
<li>The xDelete method in the built-in [VFS | VFSes] now return
    SQLITE_IOERR_DELETE_NOENT if the file to be deleted does not exist.
<li>Enhanced support for QNX.
<li>Work around an optimizer bug in the MSVC compiler when targeting ARM.
<li>Bug fix: Avoid various concurrency problems in [shared cache mode].
<li>Bug fix: Avoid a deadlock or crash if the [backup API], [shared cache],
    and the SQLite Encryption Extension are all used at once.
<li>Bug fix: SQL functions created using the TCL interface honor the
    "nullvalue" setting.
<li>Bug fix: Fix a 32-bit overflow problem on CREATE INDEX for databases
    larger than 16GB.
<li>Bug fix: Avoid segfault when using the [COLLATE operator] inside of a
    [CHECK constraint] or [view] in [shared cache mode].
}

chng {2012-10-04 (3.7.14.1)} {
<li>Fix a bug (ticket 
<a href="www.sqlite.org/src/tktview/d02e1406a58ea02d">&#91;d02e1406a58ea02d]&#93;</a>)
that causes a segfault on a LEFT JOIN that includes an OR in the ON clause.
<li>Work around a bug in the optimizer in the VisualStudio-2012 compiler that
Changes to pages/features.in.
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<li>Implements most of SQL92.
    (<a href="omitted.html">Features not supported</a>)</li>
<li>A complete database is stored in a 
    <a href="onefile.html">single cross-platform disk file</a>.</li>
<li>Supports terabyte-sized databases and gigabyte-sized strings
    and blobs.  (See <a href="limits.html">limits.html</a>.)
<li>Small code [footprint]: 
    less than 350KiB fully configured or less
    than 300KiB with optional features omitted.</li>
<li><a href="speed.html">Faster</a> than popular client/server database
    engines for most common operations.</li>
<li>Simple, easy to use <a href="c3ref/intro.html">API</a>.</li>
<li>Written in ANSI-C.  <a href="tclsqlite.html">TCL bindings</a> included.
    Bindings for dozens of other languages 
    <a href="http://www.sqlite.org/cvstrac/wiki?p=SqliteWrappers">
    available separately.</a></li>







|
|







11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<li>Implements most of SQL92.
    (<a href="omitted.html">Features not supported</a>)</li>
<li>A complete database is stored in a 
    <a href="onefile.html">single cross-platform disk file</a>.</li>
<li>Supports terabyte-sized databases and gigabyte-sized strings
    and blobs.  (See <a href="limits.html">limits.html</a>.)
<li>Small code [footprint]: 
    less than 400KiB fully configured or less
    than 250KiB with optional features omitted.</li>
<li><a href="speed.html">Faster</a> than popular client/server database
    engines for most common operations.</li>
<li>Simple, easy to use <a href="c3ref/intro.html">API</a>.</li>
<li>Written in ANSI-C.  <a href="tclsqlite.html">TCL bindings</a> included.
    Bindings for dozens of other languages 
    <a href="http://www.sqlite.org/cvstrac/wiki?p=SqliteWrappers">
    available separately.</a></li>
Changes to pages/index.in.
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
<td width="20"></td><td bgcolor="#044a64" width="1"></td><td width="20"></td>
<td valign="top">
<h3>Current Status</h3>

<p><ul>
<li><a href="releaselog/3_7_15.html">Version 3.7.15</a>
of SQLite is recommended for all new development.
Upgrading from version 3.7.6.3, 3.7.7, 3.7.7.1, 3.7.8, 3.7.9, 3.7.11,
3.7.12, 3.7.12.1, 3.7.13, 3.7.14.1 is optional.
Upgrading from all other SQLite versions
is recommended.</li>
</ul></p>

<h3>Common Links</h3>

<p><ul>







<
<







85
86
87
88
89
90
91


92
93
94
95
96
97
98
<td width="20"></td><td bgcolor="#044a64" width="1"></td><td width="20"></td>
<td valign="top">
<h3>Current Status</h3>

<p><ul>
<li><a href="releaselog/3_7_15.html">Version 3.7.15</a>
of SQLite is recommended for all new development.


Upgrading from all other SQLite versions
is recommended.</li>
</ul></p>

<h3>Common Links</h3>

<p><ul>
Changes to pages/news.in.
14
15
16
17
18
19
20





































21
22
23
24
25
26
27
  hd_puts "<h3>$date - $title</h3>"
  regsub -all "\n( *\n)+" $text "</p>\n\n<p>" txt
  regsub -all {[Tt]icket #(\d+)} $txt \
      {<a href="http://www.sqlite.org/cvstrac/tktview?tn=\1">\0</a>} txt
  hd_resolve "<blockquote>$txt</blockquote>"
  hd_puts "<hr width=\"50%\">"
}






































newsitem {2012-Oct-04} {Release 3.7.14.1} {
  SQLite [version 3.7.14.1] is a patch release.  Changes from the baseline
  version 3.7.14 are minimal and are restricted to fixing three bugs.

  One of the fixed bugs is a long-standing issue with the TCL interface.
  Another is a external compiler bug that SQLite merely works around and







>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>







14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
  hd_puts "<h3>$date - $title</h3>"
  regsub -all "\n( *\n)+" $text "</p>\n\n<p>" txt
  regsub -all {[Tt]icket #(\d+)} $txt \
      {<a href="http://www.sqlite.org/cvstrac/tktview?tn=\1">\0</a>} txt
  hd_resolve "<blockquote>$txt</blockquote>"
  hd_puts "<hr width=\"50%\">"
}

newsitem {2012-Dec-12} {Release 3.7.15} {
  SQLite [version 3.7.15] is a regularly schedule release of SQLite.  This
  release contains several improvements to the query planner and optimizer
  and one important bug fix.  This is the first release to officially
  support Windows 8 Phone.

  The important bug fix is a problem that can lead to segfaults when using
  [shared cache mode] on a schema that contains a [COLLATE operator] within
  a [CHECK constraint] or within a [view].  Collating functions are associated
  with individual database connections.  But a pointer to the collating function
  was also being cached within expressions.  If an expression was part of the
  schema and contained a cached collating function, it would point to the
  collating function in the database connection that originally parsed the
  schema.  If that database connection closed while other database 
  connections using the same shared cache continued to operate, they other
  database connections would try to use the deallocated collating function
  in the database connection that closed.  The fix in version 3.7.15 was to
  not cache collating function pointers in the expression structure but 
  instead look them up each time a new statement is prepared.

  This release also contains some important enhancements to the query planner
  which should (we hope) make some queries run faster.  The enhancements
  include:

  <ol><li><p>When doing a full-table scan, try to use an index instead of
  the original table, under the theory that indices contain less information
  and are thus smaller and hence require less disk I/O to scan.</p>

  <li><p>Enhance the [IN operator] to allow it to make use of 
  indices that have [affinity | numeric affinity].</p>

  <li><p>Do a better job of recognizing when an ORDER BY clause can be 
  implemented using indices - especially in cases where the ORDER BY clause
  contains terms from two or more tables in a join.</p>
  </ol>
}

newsitem {2012-Oct-04} {Release 3.7.14.1} {
  SQLite [version 3.7.14.1] is a patch release.  Changes from the baseline
  version 3.7.14 are minimal and are restricted to fixing three bugs.

  One of the fixed bugs is a long-standing issue with the TCL interface.
  Another is a external compiler bug that SQLite merely works around and