There is no recovery from this situation-

If you try to rollback, you get the following error -"cannot rollback
savepoint, SQL statments in progress"  or if you dont use SAVEPOINT -
"cannot rollback, no transaction is active "
If you start the transaction with BEGIN IMMEDIATE in App1, the writer in
App2 gets the following error " database is locked"

Sreekumar

On Fri, Feb 10, 2012 at 8:13 PM, Igor Tandetnik <itandet...@mvps.org> wrote:

> Marc L. Allen <mlal...@outsitenetworks.com> wrote:
> > I see.  So, the implied commit doesn't occur until you finalize?
>
> Or reset.
>
> > As a result, the subsequent update in step 5 was added to his
> > non-finalized select?
>
> The update was attempted within the same transaction.
>
> > Still.. what is the correct way to handle the explicit scenario?  I
> mean, having one process do a BEGIN SELECT UPDATE and another
> > do BEGIN UPDATE is perfectly reasonable, isn't it?  How do you protect
> from a problem?  Detect the error, rollback, and try
> > again?
>
> That's one way. The other is for the first connection to start its
> transaction with BEGIN IMMEDIATE, thus marking itself as a writer from the
> start.
> --
> Igor Tandetnik
>
> _______________________________________________
> sqlite-users mailing list
> sqlite-users@sqlite.org
> http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
>
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to