I've updated the sqlite driver. thanks.
Jens Wagner wrote: > Hi, > > we are testing the use of dbmail+sqlite for mail storage in a clustered > environment. > When there are concurrent writes e.g. on the same dbmail-imapd mailbox, > then most processes die because sqlite returns a SQLITE_BUSY error to > them. This is a documented behaviour of sqlite. > > This issue can easily be resolved by setting a busy_handler: > > > diff -urN dbmail-2.1.7-orig/modules/dbsqlite.c > dbmail-2.1.7/modules/dbsqlite.c > --- dbmail-2.1.7-orig/modules/dbsqlite.c 2006-07-15 > 19:32:28.000000000 +0200 > +++ dbmail-2.1.7/modules/dbsqlite.c 2006-10-13 11:18:58.000000000 +0200 > @@ -258,6 +258,7 @@ > trace(TRACE_FATAL, "%s,%s: sqlite3_create_function > failed", __FILE__,__func__); > return -1; > } > + sqlite3_busy_timeout(conn, 60000); > return 0; > } > > > This would set a timeout busy-handler of 60 seconds for sqlite, so > concurrent writes will hang sometimes, but not fail. > > > Best Regards > Jens Wagner > -- heXoNet Support GmbH Talstrasse 27 66424 Homburg Germany Phone: +49 > 6841 1871036-0 Fax: +49 6841 1871036-9 > > _______________________________________________ > Dbmail-dev mailing list > [email protected] > http://twister.fastxs.net/mailman/listinfo/dbmail-dev > -- ________________________________________________________________ Paul Stevens paul at nfg.nl NET FACILITIES GROUP GPG/PGP: 1024D/11F8CD31 The Netherlands________________________________http://www.nfg.nl
