Subject Re: [Firebird-Java] Transaction parameters + Jaybird
Author Alec Swan
Hello,

Please disregard by first question. I just noticed that in
isc_tpb_mapping.properties TRANSACTION_REPEATABLE_READ has
isc_tpb_conCURRENCY setting and TRANSACTION_SERIALIZABLE has
isc_tpb_conSISTENCY. Could you tell me which one corresponds to SNAPSHOT?

I would still appreciate your answer to my second question below.

Thanks,

Alec

On Mon, Jan 24, 2011 at 4:31 PM, Alec Swan <alecswan@...> wrote:

> Hello,
>
> 1. I found isc_tpb_mapping.properties file and noticed that
> TRANSACTION_REPEATABLE_READ and TRANSACTION_SERIALIZABLE are mapped to the
> same Firebird-specific settings, i.e.
> isc_tpb_consistency,isc_tpb_write,isc_tpb_wait. Does this mean that in
> Jaybird there is no difference between using TRANSACTION_REPEATABLE_READ and
> TRANSACTION_SERIALIZABLE?
>
> 2. The reason why I was asking about SNAPSHOT WAIT transaction isolation is
> that I thought it would provide higher concurrency because readers and
> writers don't block each other and instead rely on the MVCC nature of
> Firebird. However, you are saying that SNAPSHOT WAIT translates into
> TRANSACTION_REPEATABLE_READ or TRANSACTION_SERIALIZABLE settings in Jaybird,
> which in other databases provides less concurrency than
> TRANSACTION_READ_COMMITTED. Could you please comment on this?
>
> Thanks,
>
> Alec
>
>
> On Wed, Jan 19, 2011 at 2:56 AM, Roman Rokytskyy <roman@...>wrote:
>
>>
>>
>> > 1. What's the default transaction isolation level?
>>
>> For Jaybird - TRANSACTION_READ_COMMITTED.
>>
>>
>> > 2. How do I translate Firebird terms SNAPSHOT WAIT into JDBC terms? Is
>> there
>> > a translation matrix somewhere?
>>
>> yes, there is file isc_tpb_mapping.properties in the driver.
>>
>>
>> > Does your example above set transaction
>> > isolation level to SNAPSHOT WAIT?
>>
>> No, to READ COMMITTED NO WAIT.
>>
>> SNAPSHOT WAIT in Firebird uses isc_tpb_concurrency + isc_tpb_write +
>> isc_tpb_wait, you can map this to any JDBC isolation level, however in
>> order to keep the semantics close to what is written in JDBC specs, map
>> it to either TRANSACTION_REPEATABLE_READ or TRANSACTION_SERIALIZABLE.
>>
>> Roman
>>
>>
>
>


[Non-text portions of this message have been removed]