Hi,

When MVCC is disabled, see
http://h2database.com/html/advanced.html#transaction_isolation

When MVCC is enabled, then H2 behaves in the same way as with read
committed. At least currently. In the future this may change. See also
http://h2database.com/html/advanced.html#mvcc for details

Regards,
Thomas

Thomas,

I just want to make sure that you don't lose track of this question (since
you replied to a follow-up discussion): what is the difference between
SERIALIZABLE isolation when MVCC is on or off?

Thanks,
Gili

On Sunday, November 24, 2013 10:50:18 AM UTC-5, Gili wrote:
>
>  Hi Thomas,
>
> It was my understanding that SERIALIZABLE isolation in MVCC mode is
> supposed to behave like SERIALIZABLE_SNAPSHOT. At least, that's the case
> for Postgres. If SERIALIZABLE behaves the way you mention in MVCC mode,
> what is the difference if MVCC mode is on or off? It doesn't sound like
> there is a difference.
>
> Gili
>
> On 24/11/2013 7:49 AM, Thomas Mueller wrote:
>
> Hi,
>
>  > How does SERIALIZABLE isolation in MVCC mode compare to
> SERIALIZABLE_SNAPSHOT? Aren't they the same thing?
>
>  I can only refer to Google, which found this: http://blogs.msdn.com/b/
> craigfr/archive/2007/05/16/serializable-vs-snapshot-isolation-level.aspx<http://www.google.com/url?q=http%3A%2F%2Fblogs.msdn.com%2Fb%2Fcraigfr%2Farchive%2F2007%2F05%2F16%2Fserializable-vs-snapshot-isolation-level.aspx&sa=D&sntz=1&usg=AFQjCNHL8riZ1UQ_8q-_ir8sxbV5VX7_XQ>
>
>  Regards,
> Thomas
>
>
>
>
> On Sun, Nov 24, 2013 at 1:10 PM, cowwoc <[email protected]> wrote:
>
>>  Hi Thomas,
>>
>> Thanks for the reply.
>>
>>
>> On 21/11/2013 6:43 AM, Thomas Mueller wrote:
>>
>> > Does H2 implement Serializable Snapshot
>>
>>  Currently not, and I didn't plan to support it. In theory, it could be
>> supported with the MVStore, but I don't currently think it's very important.
>>
>>
>>  How does SERIALIZABLE isolation in MVCC mode compare to
>> SERIALIZABLE_SNAPSHOT? Aren't they the same thing?
>>
>> Thanks,
>> Gili
>>
>>
>>
>>  Regards,
>>  Thomas
>>
>>
>>
>> On Sat, Aug 24, 2013 at 8:10 PM, Gili <[email protected]> wrote:
>>
>>> Thomas,
>>>
>>>  Can you please clarify how H2's implementation of MVCC interacts with
>>> Transaction Isolation?
>>>
>>>    1. Is there a practical difference between READ_COMMITTED and
>>>    REPEATABLE_READ in MVCC mode? Doesn't MVCC prevent READ_COMMITTED from
>>>    seeing updates committed by other transactions (after the current
>>>    transaction has already read the row once)? If so, aren't they identical?
>>>    2. Same question for REPEATABLE_READ and SERIALIZABLE isolation in
>>>    MVCC mode.
>>>    3. Does H2 implement http://en.wikipedia.org/wiki/Serializable_
>>>    
>>> Snapshot_Isolation#Serializable_Snapshot_Isolation<http://www.google.com/url?q=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FSerializable_Snapshot_Isolation%23Serializable_Snapshot_Isolation&sa=D&sntz=1&usg=AFQjCNExhEdVr75dgDxP5G40R7fHvGul7A>
>>>  for
>>>    MVCC? If not, do you plan on doing so in the future?
>>>
>>>  Thank you,
>>> Gili
>>>
>>>
>>> On Sunday, June 23, 2013 11:23:16 AM UTC-4, Gili wrote:
>>>>
>>>>
>>>>     Thanks Thomas. So you're saying I can use other isolation modes
>>>> with MVCC as I normally would?
>>>>
>>>> Gili
>>>>
>>>> On 23/06/2013 7:39 AM, Thomas Mueller wrote:
>>>>
>>>> Hi,
>>>>
>>>>  H2 only supports row level locks when using the MVCC mode. By the
>>>> way, the plan is that in the future (with the MVStore), the MVCC mode will
>>>> be the default mode.
>>>>
>>>>  Insert/delete operations don't wait for other operations that do not
>>>> conflict. They wait for conflicting operations (changes on the same rows).
>>>>
>>>>  > What happens in the following scenario?
>>>>
>>>>  H2 uses "read committed" by default, so T1 will see the value from T2.
>>>>
>>>>  Regards,
>>>> Thomas
>>>>
>>>>
>>>>
>>>>
>>>> On Thu, Jun 20, 2013 at 8:18 PM, Gili <[email protected]> wrote:
>>>>
>>>>> Hi,
>>>>>
>>>>>  Looking at 
>>>>> http://www.h2database.com/html/advanced.html#mvcc<http://www.google.com/url?q=http%3A%2F%2Fwww.h2database.com%2Fhtml%2Fadvanced.html%23mvcc&sa=D&sntz=1&usg=AFQjCNEZaGOPQsTGn9GcPhWhhmbHy_80kw>
>>>>> ,
>>>>>
>>>>>
>>>>>    1. Does H2 only support table locks or MVCC? Or is there a way to
>>>>>    get row locks without MVCC?
>>>>>    2. Using MVCC, do insert/delete operations wait until all open
>>>>>    transactions complete?
>>>>>    3. Does this imply that open transactions will never experience
>>>>>    insert/delete rows by other threads in mid-transaction?
>>>>>    4. What happens in the following scenario?
>>>>>
>>>>> Database contains a single row: count[value=1]
>>>>> T1: Open transaction
>>>>> T2: Open transaction
>>>>> T2: update count set value=2 where value=1
>>>>> T2: commit
>>>>> T1: select value from count
>>>>>
>>>>>  Will T1 see a value of 1 or 2?
>>>>>
>>>>>  Thanks,
>>>>> Gili
>>>>>  --
>>>>> You received this message because you are subscribed to the Google
>>>>> Groups "H2 Database" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>>> an email to [email protected].
>>>>> To post to this group, send email to [email protected].
>>>>> Visit this group at http://groups.google.com/group/h2-database.
>>>>> For more options, visit https://groups.google.com/groups/opt_out.
>>>>>
>>>>>
>>>>>
>>>>
>>>>  --
>>>> You received this message because you are subscribed to a topic in the
>>>> Google Groups "H2 Database" group.
>>>> To unsubscribe from this topic, visit https://groups.google.com/d/
>>>> topic/h2-database/bGNuMpLr8IY/unsubscribe.
>>>> To unsubscribe from this group and all its topics, send an email to
>>>> [email protected].
>>>> To post to this group, send email to [email protected].
>>>> Visit this group at http://groups.google.com/group/h2-database.
>>>> For more options, visit https://groups.google.com/groups/opt_out.
>>>>
>>>>
>>>>
>>>>
>>>>      --
>>> You received this message because you are subscribed to the Google
>>> Groups "H2 Database" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> To post to this group, send email to [email protected].
>>> Visit this group at http://groups.google.com/group/h2-database.
>>> For more options, visit https://groups.google.com/groups/opt_out.
>>>
>>
>>  --
>> You received this message because you are subscribed to a topic in the
>> Google Groups "H2 Database" group.
>> To unsubscribe from this topic, visit https://groups.google.com/d/
>> topic/h2-database/bGNuMpLr8IY/unsubscribe.
>> To unsubscribe from this group and all its topics, send an email to
>> [email protected].
>> To post to this group, send email to [email protected].
>> Visit this group at http://groups.google.com/group/h2-database.
>> For more options, visit https://groups.google.com/groups/opt_out.
>>
>>
>>    --
>> You received this message because you are subscribed to the Google Groups
>> "H2 Database" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> To post to this group, send email to [email protected].
>> Visit this group at http://groups.google.com/group/h2-database.
>> For more options, visit https://groups.google.com/groups/opt_out.
>>
>
>  --
> You received this message because you are subscribed to a topic in the
> Google Groups "H2 Database" group.
> To unsubscribe from this topic, visit https://groups.google.com/d/
> topic/h2-database/bGNuMpLr8IY/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/h2-database.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>
>   --
You received this message because you are subscribed to the Google Groups
"H2 Database" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/h2-database.
For more options, visit https://groups.google.com/groups/opt_out.

-- 
You received this message because you are subscribed to the Google Groups "H2 
Database" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/h2-database.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to