I've go a test, which illustrates transaction commit fail when multiple
threads try to commit. As i said, it happenes in mvcc stage.
So we should create a special lock mechanism for all transaction methods.
In a separate ticket.
пн, 3 июл. 2017 г. в 16:26, Yakov Zhdanov <yzhdanov@apache.org>:
> >Consider thread *Th1* started transaction *Tx1*, done some actions, and is
> >calling commit (GridNearTxLocal#commit -> commitNearTxLocalAsync). And
> >concurrently thread *Th2 *is calling the same commit on* Tx1*.
>
> Alexey, this looks weird to me. IMO, if we talk about proper implementation
> you should detect all cases of illegal access (e.g. commit from thread not
> owning the transaction).
>
> --Yakov
>
--
*Best Regards,*
*Kuznetsov Aleksey*
|
Mime |
- Unnamed multipart/mixed (inline, None, 0 bytes)
- Unnamed multipart/alternative (inline, None, 0 bytes)
|