[Csync2] sqlite3 and _FILE_OFFSET_BITS=64

Art -kwaak- van Breemen ard+csync2 at telegraafnet.nl
Wed Jun 18 19:07:30 CEST 2008


On Wed, Jun 18, 2008 at 06:21:31PM +0200, Art -kwaak- van Breemen wrote:
> On Wed, Jun 18, 2008 at 05:37:40PM +0200, Art -kwaak- van Breemen wrote:
> > root at c32791:/extra/ard# csync2 -m -r  /extra
> > Database Error: COMMIT TRANSACTION [1]: COMMIT TRANSACTION
> After patching in sqlite3? text error meesages:
> [18:09:45] Database Error: COMMIT TRANSACTION [1]: COMMIT TRANSACTION (cannot commit transaction - SQL statements in progress)
> While sqlite != 3 works...
> 
> Does that mean that sqlite3 does not allow nested multiple
> transactions on a single database handle?
Allright: the commit transaction must be retried until it
succeeds. The commit is actuallly waiting until the select
finishes. The select is just iterating through 250k files.
This results in a 250kb journal. Committing the journal takes not
that much time.
Besides that: with the -B option, the transactions are also
logged to the journal until the select finishes.
With sqlite < 3, the journal is committed every 1000
transactions, which is a good thing, because it seems the journal
can get very big.


More information about the Csync2 mailing list