Documentation Source Text

Check-in [5b0295da93]
Login

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

Overview
Comment:Update the change log with the new DELETE optimization bug fix.
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 5b0295da937c3f34e180d6a697fb8dedc47a7d6c
User & Date: drh 2016-05-02 12:42:38
Context
2016-05-03
17:20
Fix typo in the change log. check-in: ee23402710 user: drh tags: trunk
2016-05-02
12:42
Update the change log with the new DELETE optimization bug fix. check-in: 5b0295da93 user: drh tags: trunk
11:03
Updates to the change log for 3.13.0. check-in: 53e8efc79e user: drh tags: trunk
Changes
Hide Diffs Side-by-Side Diffs Ignore Whitespace Patch

Changes to pages/changes.in.

    37     37   <li>Added the [sqlite3_db_config](db,[SQLITE_DBCONFIG_ENABLE_LOAD_EXTENSION]) interface
    38     38       which allows the [sqlite3_load_extension()] C-API to be enabled while keeping the
    39     39       [load_extension()] SQL function disabled for security.
    40     40   <li>Change the [temporary directory search algorithm] on Unix to allow directories
    41     41       read and execute permission, but without read permission, to serve as temporary
    42     42       directories.  Apply this same standard to the "." fallback directory.
    43     43   <p><b>Bug Fixes:</b>
           44  +<li>Fix a problem with the multi-row one-pass DELETE optimization that was
           45  +    causing it to compute incorrect answers with a self-referential subquery in
           46  +    the WHERE clause.  Fix for ticket
           47  +    [https://www.sqlite.org/src/info/dc6ebeda9396087|dc6ebeda9396087]
    44     48   <li>When checking for the WHERE-clause push-down optimization, verify that all terms
    45     49       of the compound inner SELECT are non-aggregate, not just the last term. Fix for ticket
    46     50       [https://www.sqlite.org/src/info/f7f8c97e97597|f7f8c97e97597].
    47     51   <li>Fix a locking race condition in Windows that can occur when two or more processes
    48     52       attempt to recover the same [hot journal] at the same time.
    49     53   } {backport {2016-04-18 (3.12.2)} backport {2016-04-08 (3.12.1)}}
    50     54   
................................................................................
  4155   4159     foreach {key value} $options {
  4156   4160       if {$key=="backport"} {
  4157   4161         if {[info exists xrefChng($value)]} {set value $xrefChng($value)}
  4158   4162         set c2 $aChng([expr {$i+$value}])
  4159   4163         regexp {([-0-9]+) \((3\.\d+\.[.0-9]+)[ a-zA-Z]*\)} [lindex $c2 0] all xdate xvers
  4160   4164         set d2 [lindex $c2 1]
  4161   4165         regsub {(<p>[^\n]*\n)?<li>SQLITE_SOURCE_ID.*$} $d2 {} d2
  4162         -      hd_resolve "<p><b>Changes backported into patch release $xvers ($xdate):</b></p>\n"
         4166  +      hd_resolve "<p><b>Bug fixes backported into patch release $xvers ($xdate):</b></p>\n"
  4163   4167         hd_resolve "$d2\n"
  4164   4168       }
  4165   4169     }
  4166   4170     hd_resolve "</ul></p>\n"
  4167   4171     if {[regexp {([-0-9]+) \((3\.\d+\.[.0-9]+)[ a-zA-Z]*\)} $date all dateonly vers]} {
  4168   4172       set tag [string trim [string map {. _} $vers]]
  4169   4173       file mkdir $DEST/releaselog
................................................................................
  4195   4199         }
  4196   4200         if {$key=="backport"} {
  4197   4201           if {[info exists xrefChng($value)]} {set value $xrefChng($value)}
  4198   4202           set c2 $aChng([expr {$i+$value}])
  4199   4203           regexp {([-0-9]+) \((3\.\d+\.[.0-9]+)[ a-zA-Z]*\)} [lindex $c2 0] all date vers
  4200   4204           set d2 [lindex $c2 1]
  4201   4205           regsub {(<p>[^\n]*\n)?<li>SQLITE_SOURCE_ID.*$} $d2 {} d2
  4202         -        hd_resolve "<p><b>Changes backported into patch release $vers ($date):</b></p>\n"
         4206  +        hd_resolve "<p><b>Bug fixes backported into patch release $vers ($date):</b></p>\n"
  4203   4207           hd_resolve "$d2\n"
  4204   4208         }
  4205   4209       }
  4206   4210       hd_resolve "</ul></p>\n"
  4207   4211       hd_resolve {
  4208   4212         <p>A [complete list of SQLite releases]
  4209   4213         in a single page and a [chronology] are both also available.