Subject | Re: [firebird-support] How to hard commit |
---|---|
Author | Helen Borrie |
Post date | 2005-03-07T22:44:06Z |
At 08:40 AM 7/03/2005 -0700, you wrote:
unfortunately. If you don't start and commit the transaction explicitly,
the BDE driver uses CommitRetaining to simulate the non-transactional
behaviour of the Paradox engine and memory resources get stuck forever,
until the database is in a shut down state.
That's one of the many reasons there are so many abstraction layers
available for IB and Firebird: the BDE "out-of-the-box" simply *never*
manages transactions properly.
To add to your woes, there has never been a version of the BDE that
properly handled the data types in an ODS 10 database. There never will
be, either. Borland deprecated the BDE after Delphi 5 and dropped it after
Delphi 6. The last-ever IB BDE driver was 5.3, that shipped with D6. It
was a slightly patched version of the long-time 5.1.1/5.2 driver but still
messes up numerics and dates.
./heLen
>I have a tdatabase with transisolation set to tiReadCommitted. Do IOh dear, you are using the BDE. This is the source of your problem,
>need to do periodic hard commits or are those done immediately?
unfortunately. If you don't start and commit the transaction explicitly,
the BDE driver uses CommitRetaining to simulate the non-transactional
behaviour of the Paradox engine and memory resources get stuck forever,
until the database is in a shut down state.
That's one of the many reasons there are so many abstraction layers
available for IB and Firebird: the BDE "out-of-the-box" simply *never*
manages transactions properly.
To add to your woes, there has never been a version of the BDE that
properly handled the data types in an ODS 10 database. There never will
be, either. Borland deprecated the BDE after Delphi 5 and dropped it after
Delphi 6. The last-ever IB BDE driver was 5.3, that shipped with D6. It
was a slightly patched version of the long-time 5.1.1/5.2 driver but still
messes up numerics and dates.
./heLen