Edgewall Software

Changes between Version 20 and Version 21 of PySqlite


Ignore:
Timestamp:
Oct 3, 2006, 9:34:51 AM (13 years ago)
Author:
Christian Boos
Comment:

Advise to use pysqlite 2.3.2 and other updates

Legend:

Unmodified
Added
Removed
Modified
  • PySqlite

    v20 v21  
    1111
    1212Trac 0.9 works best with '''[http://www.sqlite.org/version3.html SQLite 3.x]''',
    13 like SQLite 3.2.8 or SQLite 3.3.x.
     13like SQLite 3.2.8 or SQLite 3.3.x (latest is 3.3.7).
    1414
    1515Pay attention to
     
    4040=== The Pysqlite2 bindings ===
    4141
    42 The most stable versions are '''2.0.7''' and '''2.1.3'''.
    43 
    44 '''2.2.2''' is probably rock solid as well, as it has been
    45 extensively reviewed during its inclusion in Python 2.5.
    46 
    47 
    48 Detailed release information:
     42The most stable version is now '''2.3.2'''.
     43
     44Detailed information about older releases:
    4945 * either the 1.x release branch of PySqlite
    5046   * version 1.1.6 as of this writing,
     
    5753   This release branch features a new statement cache and
    5854   a better handling of concurrent write operations.
    59  * the brand new ''2.2.0'' version appears to work with Trac as well
    60    (I tested the 2.4 egg from initrd on Windows, and on Linux I
     55 * the ''2.2.0'' version appears to work with Trac as well
     56   (I tested the 2.4 egg from initd on Windows, and on Linux I
    6157   built it from source, linking with sqlite-3.3.4; so far both
    6258   are working perfectly)
     
    144140request triggerd an attempted to write.
    145141There are probably a few things that could be enhanced in the
    146 future to handle this situation, like automatic retry (or improve
    147 the session code).
     142future to handle this situation, like automatic retry, see #3446.
     143
     144Also, is this error is somehow inevitable with SQLite, we should make
     145the error message a bit more "user friendly" (#3503).
    148146
    149147The lock error is also much more frequent if SQLite is used in a
    150148multi-threaded environment (like TracStandalone or TracModPython)
    151149but the library was not compiled to be thread-safe.
    152 See above [wiki:PySqlite#Buildingsqliteyourself building from source]
    153 and #2170.
     150See above, [#BuildingSQLiteyourself building from source], and #2170.
    154151
    155152The real problem with this occurs when ''all'' requests to Trac
     
    165162   Upgrading Trac and Pysqlite will solve the issue (see #2345)
    166163
     164See also: SQLite:DatabaseIsLocked.
     165
    167166==== `ProgrammingError: library routine called out of sequence` ====
    168167
    169168This happens on MacOS X, and is still an open issue (see #2969)
     169
     170See also: SQLite:LibraryRoutineCalledOutOfSequence.
    170171
    171172==== `Warning: You can only execute one statement at a time.` ====
     
    214215([http://projects.edgewall.com/trac/ticket/2170#change_8 details])
    215216
     217Segmentation faults can also happen in multi-threaded servers using a SQLite library which has ''not'' been configured to be multi-thread safe (see [#BuildingSQLiteyourself above]).
    216218
    217219'''P.S. Note that despite of all of the above, for some (most?) users, SQLite/Pysqlite works flawlessly :)'''