Documentation Source Text

Check-in [d26b238e7e]
Login

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

Overview
Comment:Update to the flattening optimization description in the optoverview.html page. Add a new bullet to the change log for 3.19.0.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: d26b238e7efe8a4d457420d89de34c2ad76267315b054f18b14944f839a2f2e2
User & Date: drh 2017-04-18 11:52:12.164
Context
2017-04-29
16:55
Improved background information on the bytecode engine. (check-in: 21168dec96 user: drh tags: trunk)
2017-04-18
11:52
Update to the flattening optimization description in the optoverview.html page. Add a new bullet to the change log for 3.19.0. (check-in: d26b238e7e user: drh tags: trunk)
11:40
Add a change log entry for the pending 3.19.0 release. (check-in: 31ead1aade user: drh tags: trunk)
Changes
Unified Diff Ignore Whitespace Patch
Changes to pages/changes.in.
30
31
32
33
34
35
36


37
38
39
40
41
42
43
<li> Use [replace()] instead of [char()] for escaping newline and carriage-return
     characters embedded in strings in the .dump output from the [command-line shell].
<li> Avoid unnecessary foreign key processing in UPDATE statements that do not
     touch the columns that are constrained by the foreign keys.
<li> On a DISTINCT query that uses an index, try to skip ahead to the next distinct
     entry using the index rather that stepping through rows, when an appropriate
     index is available.


<p><b>Bug Fixes:</b>
<li> Fix a problem in [PRAGMA integrity_check] that was causing a subsequent
     [VACUUM] to behave suboptimally.
<li> Fix the [PRAGMA foreign_key_check] command so that it works correctly with
     foreign keys on [WITHOUT ROWID] tables.
<li> Disallow leading zeros in numeric constants in JSON.  Fix for ticket
     [https://www.sqlite.org/src/info/b93be8729a895a528e2|b93be8729a895a528e2].







>
>







30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<li> Use [replace()] instead of [char()] for escaping newline and carriage-return
     characters embedded in strings in the .dump output from the [command-line shell].
<li> Avoid unnecessary foreign key processing in UPDATE statements that do not
     touch the columns that are constrained by the foreign keys.
<li> On a DISTINCT query that uses an index, try to skip ahead to the next distinct
     entry using the index rather that stepping through rows, when an appropriate
     index is available.
<li> Avoid unnecessary invalidation of [sqlite3_blob] handles when making
     changes to unrelated tables.
<p><b>Bug Fixes:</b>
<li> Fix a problem in [PRAGMA integrity_check] that was causing a subsequent
     [VACUUM] to behave suboptimally.
<li> Fix the [PRAGMA foreign_key_check] command so that it works correctly with
     foreign keys on [WITHOUT ROWID] tables.
<li> Disallow leading zeros in numeric constants in JSON.  Fix for ticket
     [https://www.sqlite.org/src/info/b93be8729a895a528e2|b93be8729a895a528e2].
Changes to pages/optoverview.in.
1063
1064
1065
1066
1067
1068
1069
1070

1071
1072
1073
1074
1075
1076
1077
  <ol>
  <li value="1">  ^The subquery and the outer query do not both use aggregates.

  <li value="2">
  ^The subquery is not an aggregate or the outer query is not a join.

  <li value="3">
  ^The subquery is not the right operand of a left outer join.


  <li value="4">  ^The subquery is not DISTINCT.

  <li value="5"> <i>(Subsumed into constraint 4)</i>

  <li value="6">
        ^The subquery does not use aggregates or the outer query is not







|
>







1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
  <ol>
  <li value="1">  ^The subquery and the outer query do not both use aggregates.

  <li value="2">
  ^The subquery is not an aggregate or the outer query is not a join.

  <li value="3">
  ^The subquery is not the right operand of a left outer join or
   the subquery is not itself a join.

  <li value="4">  ^The subquery is not DISTINCT.

  <li value="5"> <i>(Subsumed into constraint 4)</i>

  <li value="6">
        ^The subquery does not use aggregates or the outer query is not