Subject | Re: [firebird-support] Long read-only Transactions |
---|---|
Author | Helen Borrie |
Post date | 2008-06-12T22:31:05Z |
At 06:28 AM 13/06/2008, Sergio H. Gonzalez wrote:
If the TRANSACTION is a read-write transaction (the default in IBX) then keeping any of its datasets open for long periods will cause the OIT to get stuck and inhibit garbage collection.
A read-only READ COMMITTED transaction can stay open for longer periods without inhibiting GC. The same is not true if the read-only transaction is SNAPSHOT (what IBX calls Concurrency).
./heLen
>[FB 2.1]Don't confuse a "read-only dataset" with a read-only transaction. A "read-only dataset" is a client-side attribute - the server does not know about it.
>
>Hi!
>I have some forms with ClientDataSets in order to mantain some tables of my
>app.
>Some of these forms, may display some child record from another table.
>I always open the read-only tables with a TIBQuery conected to the dataset
>via the query's DataSourse = MyClientDataSetDataSourse.
>Now I'm thinking that the transaction asociated with the TIBQueries will be
>open all the time the form is open.
>Is it bad?
>Of course all that transaction don't modify nothing. Just read records.
If the TRANSACTION is a read-write transaction (the default in IBX) then keeping any of its datasets open for long periods will cause the OIT to get stuck and inhibit garbage collection.
A read-only READ COMMITTED transaction can stay open for longer periods without inhibiting GC. The same is not true if the read-only transaction is SNAPSHOT (what IBX calls Concurrency).
./heLen