Documentation Source Text

Check-in [6a5cbbb368]
Login

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

Overview
Comment:Merge the 3.12.2 changes from the 3.12 branch. Add a change log entry for SQLITE_DBCONFIG_ENABLE_LOAD_EXTENSION.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 6a5cbbb368649774b7d5581d2413ce822df3a238
User & Date: drh 2016-04-21 02:35:32.354
Context
2016-04-21
13:37
Fix a typo in rbu.in: "us" -> "use". (check-in: b50372204c user: dan tags: trunk)
02:35
Merge the 3.12.2 changes from the 3.12 branch. Add a change log entry for SQLITE_DBCONFIG_ENABLE_LOAD_EXTENSION. (check-in: 6a5cbbb368 user: drh tags: trunk)
2016-04-18
18:37
Add hashes to the 3.12.2 change log. (check-in: 7e800725ac user: drh tags: branch-3.12)
2016-04-08
20:15
Merge changes from the 3.12.0 branch. Improvements to change-log rendering. (check-in: 3d991d2d4e user: drh tags: trunk)
Changes
Unified Diff Ignore Whitespace Patch
Changes to pages/changes.in.
24
25
26
27
28
29
30



31



















32
33
34
35
36
37
38
chng {2016-05-00 (3.13.0)} {
<li>Added the [session] extension to trunk.
<li>Added the ".auth ON|OFF" command to the [command-line shell].
<li>Improved unicode filename handling in the [command-line shell] on Windows.
<li>Improved resistance against goofy query planner decisions caused by
    incomplete or incorrect modifications to the [sqlite_stat1] 
    table by the application.



} {backport {2016-04-08 (3.12.1)}}




















chng {2016-04-08 (3.12.1)} {
<li>Fix a boundary condition error introduced by version 3.12.0
    that can result in a crash during heavy [SAVEPOINT] usage.
    Ticket [https://www.sqlite.org/src/info/7f7f8026eda38|7f7f8026eda38].
<li>Fix [views] so that they inherit column datatypes from the 
    table that they are defined against, when possible.







>
>
>
|
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>







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
chng {2016-05-00 (3.13.0)} {
<li>Added the [session] extension to trunk.
<li>Added the ".auth ON|OFF" command to the [command-line shell].
<li>Improved unicode filename handling in the [command-line shell] on Windows.
<li>Improved resistance against goofy query planner decisions caused by
    incomplete or incorrect modifications to the [sqlite_stat1] 
    table by the application.
<li>Added the [sqlite3_db_config](db,[SQLITE_DBCONFIG_ENABLE_LOAD_EXTENSION]) interface
    which allows the [sqlite3_load_extension()] C-API to be enabled while keeping the
    [load_extension()] SQL function disabled for security.
} {backport {2016-04-18 (3.12.2)} backport {2016-04-08 (3.12.1)}}

chng {2016-04-18 (3.12.2)} {
<li>Fix a backwards compatibility problem in version 3.12.0 and 3.12.1:
    Columns declared as <tt>"INTEGER" PRIMARY KEY</tt> (with quotes around
    the datatype keyword) where not being recognized as an
    [INTEGER PRIMARY KEY], which resulted in an incompatible database file.
    Ticket [https://www.sqlite.org/src/info/7d7525cb01b68|7d7525cb01b68]
<li>Fix a bug (present since [version 3.9.0]) that can cause the [DELETE]
    operation to miss rows if [PRAGMA reverse_unordered_selects] is turned on.
    Ticket [https://www.sqlite.org/src/info/a306e56ff68b8fa5|a306e56ff68b8fa5]
<li>Fix a bug in the code generator that can causes incorrect results if
    two or more [virtual tables] are joined and the virtual table used in
    outer loop of the join has an [IN operator] constraint.
<li>Correctly interpret negative "PRAGMA cache_size" values when determining
    the cache size used for sorting large amounts of data.
<p><b>Hashes:</b>
<li>SQLITE_SOURCE_ID: "2016-04-18 17:30:31 92dc59fd5ad66f646666042eb04195e3a61a9e8e"
<li>SHA1 for sqlite3.c: de5a5898ebd3a3477d4652db143746d008b24c83
} {patchagainst 1 patchagainst 3}

chng {2016-04-08 (3.12.1)} {
<li>Fix a boundary condition error introduced by version 3.12.0
    that can result in a crash during heavy [SAVEPOINT] usage.
    Ticket [https://www.sqlite.org/src/info/7f7f8026eda38|7f7f8026eda38].
<li>Fix [views] so that they inherit column datatypes from the 
    table that they are defined against, when possible.
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 {2016-04-08} {Release 3.12.1} {
<p>SQLite [version 3.12.1] is an emergency patch release to address a 
   [https://www.sqlite.org/src/info/7f7f8026eda38|crash bug] that snuck
   into [version 3.12.0].  Upgrading from version 3.12.0 is highly
   recommended.
<p>Another minor problem involving datatypes on [view] columns, 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
  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 {2016-04-18} {Release 3.12.2} {
<p>Yikes!  The 3.12.0 and 3.12.1 releases contain a backwards compatibility bug!
   Tables that declare a column with type <tt>"INTEGER" PRIMARY KEY</tt>
   (where the datatype name INTEGER is quoted) generate an incompatible
   database file.  The mistake came about because the developers have never
   thought to put a typename in quotes before, and so there was no documentation 
   of that capability nor any tests.  (There are tests now, though, of course.)
   Instances of quoting the datatype name are probably infrequent in the wild,
   so we do not expect the impact of this bug to be too severe.
   Upgrading is still strongly recommended.
<p>Fixes for three other minor issues were included in this patch release.
   The other issues would have normally been deferred until the next scheduled
   release, but since a patch release is being issued anyhow, they might as
   well be included.
}

newsitem {2016-04-08} {Release 3.12.1} {
<p>SQLite [version 3.12.1] is an emergency patch release to address a 
   [https://www.sqlite.org/src/info/7f7f8026eda38|crash bug] that snuck
   into [version 3.12.0].  Upgrading from version 3.12.0 is highly
   recommended.
<p>Another minor problem involving datatypes on [view] columns, and
Changes to pages/partialindex.in.
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
are created by UNIQUE or PRIMARY KEY constraints inside of CREATE TABLE
statements) are ordinary full indexes.
</p>

<p>
^The expression following the WHERE clause may contain operators,
literal values, and names of columns in the table being indexed.
^The WHERE clause may <em>not</em> contains subqueries, references to other
tables, functions, or [bound parameters].  The LIKE, GLOB, MATCH,
and REGEXP operators in SQLite are implemented as functions by the same name.
^Since functions are prohibited in the 
WHERE clause of a CREATE INDEX statement, so too are the LIKE, GLOB,
MATCH, and REGEXP operators.</p>

<p>







|







34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
are created by UNIQUE or PRIMARY KEY constraints inside of CREATE TABLE
statements) are ordinary full indexes.
</p>

<p>
^The expression following the WHERE clause may contain operators,
literal values, and names of columns in the table being indexed.
^The WHERE clause may <em>not</em> contain subqueries, references to other
tables, functions, or [bound parameters].  The LIKE, GLOB, MATCH,
and REGEXP operators in SQLite are implemented as functions by the same name.
^Since functions are prohibited in the 
WHERE clause of a CREATE INDEX statement, so too are the LIKE, GLOB,
MATCH, and REGEXP operators.</p>

<p>