Xuan Baldauf wrote:

>Nikita Danilov wrote:
>
>  
>
>>
>>Because we don't currently support isolation, isolation levels are not
>>exactly meaningful. But yes, one thread T1 can read data modified by
>>another thread T2 that hasn't yet committed, but at that moment "atom"
>>associated with T1 will "fuse" with atom of T2, so that they will either
>>commit of fail -both-.
>>
You should mention that we will support isolation, but we won't work on 
that until after Halloween.

>>    
>>
>
>So this is an implicit join of transactions. How do you ensure that livelocks do
>not happen, i.e. that T1 fails due to T2, and T2 also fails because it joined T1,
>and that thus a retry would make T1 with T2 fail again...?
>
We don't.  Think of what we are doing as taking the traditional 
journaling filesystem approach of not allowing rollback except in 
response to crashes, and only allowing trusted plugins to use 
transactions.  Then understand that we will add isolation and a user API 
later after the code we have is debugged.

Hans

Reply via email to