+ My 5 cents:

When a transaction uses one-phase commit optimization, there is no
difference between PRIMARY_SYNC and FULL_SYNC.

2017-02-08 21:50 GMT+03:00 Valentin Kulichenko <
valentin.kuliche...@gmail.com>:

> Thanks!
>
> -Val
>
> On Tue, Feb 7, 2017 at 8:43 PM, Yakov Zhdanov <yzhda...@apache.org> wrote:
>
> > Val, I think value read which is about to be overwritten by a commit is
> > possible. I think only pessimistic repeatable read tx can protect you
> > against that. Also, it seems there are no difference between read from
> one
> > node and read from several nodes here.
> >
> > In primary_sync mode primaries send finish response immediately after
> > processing finish request. Prepare step is synchronous (successful
> > completion of one, btw, ensures that TX will be committed in any case).
> For
> > FULL_SYNC primary nodes wait for all backups and near readers to respond
> to
> > finish and then send finish responses back to near node.
> >
> > --Yakov
> >
> > 2017-02-08 11:23 GMT+07:00 Valentin Kulichenko <
> > valentin.kuliche...@gmail.com>:
> >
> > > Folks,
> > >
> > > I've got couple of questions about transactional behavior in Ignite
> that
> > I
> > > want to clarify.
> > >
> > > 1. With READ_COMMITTED isolation, do I have atomicity guarantee when
> > > reading multiple values? For example, first transaction commits keys
> > > [1,2,3,4,5], while another does getAll([2,4]). Is it possible to get
> > > committed value for 2 and an old one for 4, or vice versa? Is there a
> > > difference between a distributed transaction and transaction colocated
> > to a
> > > single node?
> > >
> > > 2.  What are the semantics of PRIMARY_SYNC in transactional cache? Is
> > there
> > > a difference in guarantees between PRIMARY_SYNC and FULL_SYNC?
> > >
> > > Thanks!
> > >
> > > -Val
> > >
> >
>

Reply via email to