FAQ
All,

I am pleased to announce that DBD::SQLite (Self Contained RDBMS in a Perl DBI
Driver) version 1.30_04 has been released on CPAN (by Adam Kennedy).

http://search.cpan.org/~adamk/DBD-SQLite-1.30_04/

This developer release bundles the brand-new SQLite version 3.7.2, which (since
3.7.0) adds support for write-ahead logging (WAL). See
http://sqlite.org/wal.html for the details of the WAL support that SQLite now has.

WAL is an alternative method to how SQLite implements atomic commit and rollback
than to its rollback journal method. It offers much improved concurrency and
performance in many circumstances, such as because database readers and writers
don't block each other. There are also trade-offs. By default, SQLite and
DBD::SQLite will continue to use the older rollback journal method, and you can
use the new WAL method with the SQL command:

PRAGMA journal_mode=WAL;

There are also numerous other additions, changes, or fixes in either DBD::SQLite
or SQLite itself since the last production DBD::SQLite release 1.29 of 2010
January, which bundles SQLite 3.6.22. For the change details since then, see
http://sqlite.org/changes.html or
http://search.cpan.org/src/ADAMK/DBD-SQLite-1.30_04/Changes as appropriate.

TESTING NEEDED!

Please bash the hell out of the latest DBD::SQLite and report any outstanding
bugs on RT. Test your dependent or compatible projects with it, which includes
any DBMS-wrapping or object persistence modules, and applications.

This 1.30_04 release will probably be released as a production 1.31 within a
week if no show-stopper problems are found.

Please note the compatibility caveats of using pre-3.7.x versions of SQLite on
databases that had been used with WAL mode on. In order to use an older SQLite
on the database, the database must have last been used by a 3.7.x in journal
mode. See http://sqlite.org/wal.html for details.

Please note that, if you receive nondescript "disk I/O error" errors from your
code after the update, see if the failing code involves a process fork followed
by unlinking of the database, such as if it was temporary for testing. The
DBD::SQLite test suite had needed an update to act more correctly, which the
update to 3.7.x from 3.6.x exposed; 3.6.x didn't complain about this.

If you want in to DBD::SQLite development, then join the following email/IRC
forums which MST created (the mailing list, I am administrating):

http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/dbd-sqlite

#dbd-sqlite on irc.perl.org

And the canonical version control is at:

http://svn.ali.as/cpan/trunk/DBD-SQLite/

Patches welcome. Ideas welcome. Testing welcome.

If you feel that a bug you find is in SQLite itself rather than the Perl DBI
driver for it, the main users email forum for SQLite in general is at:

http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

... where you can report it as an appropriate list post (the SQLite issue
tracking system is no longer updateable by the public; posting in the list can
cause an update there by a registered SQLite developer).

Please do not reply to me directly with your responses. Instead send them to
the forums or file with RT as is appropriate.

Thank you. -- Darren Duncan

Search Discussions

  • Dagfinn Ilmari Mannsåker at Aug 25, 2010 at 10:14 pm

    Darren Duncan writes:

    All,

    I am pleased to announce that DBD::SQLite (Self Contained RDBMS in a Perl DBI
    Driver) version 1.30_04 has been released on CPAN (by Adam Kennedy). [...]
    TESTING NEEDED!

    Please bash the hell out of the latest DBD::SQLite and report any outstanding
    bugs on RT. Test your dependent or compatible projects with it, which includes
    any DBMS-wrapping or object persistence modules, and applications.
    FYI: both DBIx::Class and DBIx::Class::Schema::Loader (current git HEAD)
    pass their test suites with DBD::SQLite 1.30_04.

    --
    ilmari
    "A disappointingly low fraction of the human race is,
    at any given time, on fire." - Stig Sandbeck Mathisen
  • Toby Corkindale at Sep 3, 2010 at 2:56 am

    On 26/08/10 06:31, Darren Duncan wrote:
    All,

    I am pleased to announce that DBD::SQLite (Self Contained RDBMS in a
    Perl DBI
    Driver) version 1.30_04 has been released on CPAN (by Adam Kennedy).

    http://search.cpan.org/~adamk/DBD-SQLite-1.30_04/

    This developer release bundles the brand-new SQLite version 3.7.2, which
    (since 3.7.0) adds support for write-ahead logging (WAL). See
    http://sqlite.org/wal.html for the details of the WAL support that
    SQLite now has.

    TESTING NEEDED!
    Hi all,
    So I've done a little testing on the upcoming dbd-sqlite release.
    Generally it's performed around the same as the previous version, in
    terms of performance and memory usage.

    However in the new write-ahead-logging mode, I initially had results
    that were 20-25% faster!
    However I was running the tests in an environment with relatively slow
    disk i/o. After I re-ran the tests with faster I/O available, the
    performance lead narrowed.. but is still slightly faster with WAL enabled.
    It's worth noting that this was still the case with fsyncs disabled,
    which surprised me. Seems like you can get good performance benefits out
    of the WAL, in certain conditions (loaded disk i/o) even in single-user
    mode.

    In read-only performance tests, 1.30 with or without WAL did not provide
    any difference in performance.

    I haven't had time to perform any serious multi-user cases against WAL
    yet. We have tried to avoid multi-user use as it tended to break older
    SQLite versions due to the lock timeouts.


    Cheers,
    Toby

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupdbd-sqlite @
postedAug 25, '10 at 8:31p
activeSep 3, '10 at 2:56a
posts3
users3
websiteshadowcat.co.uk

People

Translate

site design / logo © 2021 Grokbase