Subject | Re: [firebird-support] FB 2.1 transaction question |
---|---|
Author | Thomas Steinmaurer |
Post date | 2019-05-09T16:01:40Z |
> I have a program that uses Firebird 2.1. Most installation use theData changes, which did not get acknowledged by either COMMIT or COMMIT
> embedded version so I prefer to stick with 2.1 since it does all I need.
>
> I have a question about transactions: if I start a transaction, I add or
> modify some data, then the program gets an exception and it crashes,
> what happens to the transaction?
>
> I was believing that if the program terminates without calling commit or
> rollback, then the transaction is automatically rolled back.
>
> Now a customer had a problem that can be explained if the transaction is
> not rolled back, but the data changes remained in the database even if
> commit was not called because the program crashed before calling it.
>
> Can anybody explain if changed data in this situation remains in the
> database of is it rolled back?
RETAINING should never get permanently persisted.
Any chance that you are using your client access components in auto
commit mode?
--
With regards,
Thomas Steinmaurer
http://www.upscene.com/
Professional Tools and Services for Firebird
FB TraceManager, IB LogManager, Database Health Check, Tuning etc.