On 9/7/05, Mark Drago <[EMAIL PROTECTED]> wrote:
> 
> 
> The problem I'm seeing is that (I'm half guessing) after I run a
> rollback, when I try and run 'begin transaction' I get: 'cannot start a
> transaction within a transaction'. As far as I can tell there is no way
> to get out of this part of my code without running either a rollback or
> a commit. I've executed 'pragma synchronous=off' on this database as
> I'll be writing to it very often and the data isn't life-or-death
> important. I don't think this should impact anything, but I figured I
> would share. Any ideas?


This is just a WAG but:

You said you checked that the transaction was always closed. You are doing a 
commit if it
succeeds right? Does the transaction perhaps not lock/unlock both databases?

If I were doing it I would store pending log messages in a queue in memory, 
or
design my application to wait and retry a small number of times. On my last
project I went by the rule "if you can't commit changes within 30 seconds
something is seriously broken". I would write to syslog if it got broken and 
abort.

Reply via email to