Documentation Source Text

Check-in [fa09fac9b0]
Login

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

Overview
Comment:Preparation for the 3.6.10 release.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: fa09fac9b001c5ab645dab083299fc0e1193f1ff
User & Date: drh 2009-01-15 14:45:53.000
Context
2009-01-15
15:58
Tweaks to the 3.6.10 release documentation. (check-in: eb679e3242 user: drh tags: trunk)
14:45
Preparation for the 3.6.10 release. (check-in: fa09fac9b0 user: drh tags: trunk)
2009-01-14
06:51
Fix minor typo in pragma.html. (check-in: 0fec42b940 user: dan tags: trunk)
Changes
Unified Diff Ignore Whitespace Patch
Changes to pages/changes.in.
37
38
39
40
41
42
43





44
45
46
47
48
49
50
51
52
53
54
55
      <a href="http://www.sqlite.org/cvstrac/timeline">
      http://www.sqlite.org/cvstrac/timeline</a>.</p>
    }
    hd_close_aux
    hd_enable_main 1
  }
}






chng {2009 Jan 14 (3.6.9)} {
<li>Fix two bugs, which when combined might result in incorrect
    query results.  Both bugs were harmless by themselves; only when
    they team up do they cause problems.  Ticket #3581.
}

chng {2009 Jan 12 (3.6.8)} {
<li>Added support for [SAVEPOINT | nested transactions]</li>
<li>Enhanced the query optimizer so that it is able to use
    multiple indices to efficiently process 
    <a href="optoverview.html#or_opt">OR-connected constraints</a>







>
>
>
>
>




|







37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
      <a href="http://www.sqlite.org/cvstrac/timeline">
      http://www.sqlite.org/cvstrac/timeline</a>.</p>
    }
    hd_close_aux
    hd_enable_main 1
  }
}

chng {2009 Jan 15 (3.6.10)} {
<li>Fix a cache coherency problem that could lead to database corruption.
    [Ticket #3584].
}

chng {2009 Jan 14 (3.6.9)} {
<li>Fix two bugs, which when combined might result in incorrect
    query results.  Both bugs were harmless by themselves; only when
    they team up do they cause problems.  [Ticket #3581].
}

chng {2009 Jan 12 (3.6.8)} {
<li>Added support for [SAVEPOINT | nested transactions]</li>
<li>Enhanced the query optimizer so that it is able to use
    multiple indices to efficiently process 
    <a href="optoverview.html#or_opt">OR-connected constraints</a>
Changes to pages/index.in.
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94

</td>
<td width="20"></td><td bgcolor="#80a796" width="1"></td><td width="20"></td>
<td valign="top">
<h3>Current Status</h3>

<p><ul>
<li><a href="releaselog/3_6_9.html">Version 3.6.9</a>
of SQLite is recommended for all new development.  Upgrading from
versions 3.6.4 through 3.6.6.1 is strongly recommented.  Upgrading
from versions 3.6.6.2 or 3.6.7 is optional.  Upgrading from
version 3.6.8 is recommended.</li>
</ul></p>

<h3>Common Links</h3>

<p><ul>
<li> <a href="features.html">Features</a> </li>
<li> <a href="faq.html">Frequently Asked Questions</a> </li>







|

|
<
<







76
77
78
79
80
81
82
83
84
85


86
87
88
89
90
91
92

</td>
<td width="20"></td><td bgcolor="#80a796" width="1"></td><td width="20"></td>
<td valign="top">
<h3>Current Status</h3>

<p><ul>
<li><a href="releaselog/3_6_10.html">Version 3.6.10</a>
of SQLite is recommended for all new development.  Upgrading from
all prior versions is  recommented.</li>


</ul></p>

<h3>Common Links</h3>

<p><ul>
<li> <a href="features.html">Features</a> </li>
<li> <a href="faq.html">Frequently Asked Questions</a> </li>
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 "<p>$txt</p>"
  hd_puts "<hr width=\"50%\">"
}















































newsitem {2009-Jan-14} {Version 3.6.9} {
  Internal stress testing revealed a corner case where the cost function 
  on the query optimizer might mislead the query optimizer into making a 
  poor indexing choice.  That choice could then tickle another bug in 
  the VDBE which might result in an incorrect query result.  This
  release fixes both problems.  The chances of actually hitting this







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







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
65
66
67
68
69
70
71
72
73
  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 "<p>$txt</p>"
  hd_puts "<hr width=\"50%\">"
}

newsitem {2009-Jan-15} {Version 3.6.10} {
  SQLite [version 3.6.10] fixes a cache coherency bug (Ticket #3584)
  introduced by check-in
  <a href="http://www.sqlite.org/cvstrac/chngview?cn=5864">[5864]</a>
  which was part of [version 3.6.5].  This bug might lead to database
  corruption, hence we felt it was important to get it out as quickly
  as possible, even though there had already been two prior releases
  this week.

  Some concern has been expressed that we are releasing too frequently.
  (Three releases in one week is a lot!)  The concern is that this creates
  the impression of volatility and unreliability.  We have been told that
  we should delay releases in order to create the impression of stability.
  But the SQLite developers feel that truth is more important than
  perception, not the other way around.  We think it is important to make
  the highest quality and most stable version of SQLite available to users
  at all times.  This week has seen two important bugs being discovered
  shortly after a major release, and so we have issued two emergency
  patch releases after the regularly scheduled major release.  This makes
  us look bad.  This puts "egg on our face."  We do not like that.  But, 
  three releases also ensures that the best quality SQLite code base
  is available available to you at all times.

  It has been suggested that "beta" releases might find these kinds of bugs
  prior to a major release.  But our experience indicates otherwise. 
  The two issues that prompted releases 3.6.9 and 3.6.10 were both
  discovered by internal testing and review - not by external users.
  And, indeed, most the problems found in SQLite these days are discovered
  by our rigorous <a href="testing.html">internal testing regimen</a>,
  not bug reports from the field.

  It has also been argued that we should withhold releases "until testing
  is finished."  The falacy there is that we never finish testing.  We
  are constantly writing new test cases for SQLite and thinking of new
  ways to stress and potentially break the code.  This is a continuous,
  never-ending, and on-going process.  All existing tests pass before each
  release.  But we will always be writing new tests the day after a release,
  regardless of how long we delay that release.  And sometimes those new
  tests will uncover new problems.

  All this is to say that we believe that SQLite version 3.6.10 is the
  most stable, most thoroughly tested, and bug-free version of SQLite
  that has ever existed.  Please do not be freaked out by three releases
  occurring in one week.
}

newsitem {2009-Jan-14} {Version 3.6.9} {
  Internal stress testing revealed a corner case where the cost function 
  on the query optimizer might mislead the query optimizer into making a 
  poor indexing choice.  That choice could then tickle another bug in 
  the VDBE which might result in an incorrect query result.  This
  release fixes both problems.  The chances of actually hitting this
Changes to req/hlr10000.txt.
3373
3374
3375
3376
3377
3378
3379
3380

HLR H18300 S20400
The sqlite3.h header file shall define the
the following interfaces:
<blockquote><pre>
int sqlite3_overload_function(sqlite3*, const char *zFuncName, int nArg);
</pre></blockquote>








<
3373
3374
3375
3376
3377
3378
3379


HLR H18300 S20400
The sqlite3.h header file shall define the
the following interfaces:
<blockquote><pre>
int sqlite3_overload_function(sqlite3*, const char *zFuncName, int nArg);
</pre></blockquote>