Subject Re: [firebird-support] Understanding Sweep
Author Helen Borrie
At 01:27 PM 24/10/2007, you wrote:
>Hi Helen
>
>On 10/24/07, Helen Borrie <helebor@...> wrote:
>> Firebird itself will eventually commit transactions left hanging from lost connections but,
>> going by info you have provided so far, your SQLConnection is not being abandoned, just
>> neglected...(just guessing....)
>
>My understanding was that transactions from lost connections would be
>rolledback rather than committed. From my experimentation that does
>seem to be the case. Under what circumstances does Firebird commit a
>transaction that was left by a lost connection? Does that happen if
>the transaction was only used to read data, or do some writes get
>committed too?

Commit is a lot more economical than rolling back. In cleanups from abandoned/aborted connections, read-only transactions are always committed, but I believe that the engine is smart enough to commit (rather than roll back) read-write transactions that have no pending DML. (I'm willing to be corrected by Dmitry or Vlad on this, as I'm possibly confusing the engine's clean-up behaviour with IBO's transaction management capabilities....)

./heLen



>Regards
>Gareth Marshall
>
>
>++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>
>Visit http://www.firebirdsql.org and click the Resources item
>on the main (top) menu. Try Knowledgebase and FAQ links !
>
>Also search the knowledgebases at http://www.ibphoenix.com
>
>++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>
>Yahoo! Groups Links
>
>
>