Optimistic mode with serializable vs read_committed

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Optimistic mode with serializable vs read_committed

John Wilson
Hi,

I was reading this documentation,
https://www.gridgain.com/resources/blog/apache-ignite-transactions-architecture-concurrency-modes-and-isolation-levels,
to understand the difference between Optimistic mode with Serializable vs
read_committed. The only difference I see from the explanation given is
that for Serializable isolation, the "*primary nodes manage the transaction
requests internally*" before an ACK is sent to the coordinator while for
read_committed, the ACK is sent immediately and the nodes "*manage the
transaction requests internally*" later.

My question:


   1. What does "*primary nodes manage the transaction requests
internally"* exactly
   mean?
   2. What are the specific things a node has to do to manage transaction
   requests internally?

Thanks,
John
Reply | Threaded
Open this post in threaded view
|

Re: Optimistic mode with serializable vs read_committed

voipp
All optimistic transactions on prepare phase (step 11) create tx instance
GridDhtTxLocal.
Try to lock keys on this step and if succeed then prepare phase is
continued.
On this step transaction context got created and keys are put into it for
futher committing.
Additionally, cluster version is cheked against initial one.

But I wonder why serialization and read committed modes differs in this.
Mistake ?

вт, 3 июл. 2018 г. в 22:10, John Wilson <[hidden email]>:

> Hi,
>
> I was reading this documentation,
>
> https://www.gridgain.com/resources/blog/apache-ignite-transactions-architecture-concurrency-modes-and-isolation-levels
> ,
> to understand the difference between Optimistic mode with Serializable vs
> read_committed. The only difference I see from the explanation given is
> that for Serializable isolation, the "*primary nodes manage the transaction
> requests internally*" before an ACK is sent to the coordinator while for
> read_committed, the ACK is sent immediately and the nodes "*manage the
> transaction requests internally*" later.
>
> My question:
>
>
>    1. What does "*primary nodes manage the transaction requests
> internally"* exactly
>    mean?
>    2. What are the specific things a node has to do to manage transaction
>    requests internally?
>
> Thanks,
> John
>