in this case assert !entry1.detached() will throw exception

ср, 22 мар. 2017 г. в 23:17, Alexey Goncharuk <alexey.goncha...@gmail.com>:

> Yes, that is correct. Note, however, that in this case, node1 will send a
> NearTxPrepareRequest to node2 and lockMultiple() will be called on node2,
> not on node1.
>
> 2017-03-22 20:26 GMT+03:00 ALEKSEY KUZNETSOV <alkuznetsov...@gmail.com>:
>
> > correct me if im wrong. Consider node1 called cache.put(key1, val1);
> > So node1 creates cacheEntry1. If Affinity function decides node2 holds
> key1
> > then cacheEntry1 will be detached, otherwise cacheEntry isnt detached.
> >
> > ср, 22 Мар 2017 г., 18:43 Alexey Goncharuk <alexey.goncha...@gmail.com>:
> >
> > > This assertion ensures that an entry locked by an optimistic
> transaction
> > is
> > > locked on a primary or backup node. Like you said, if an entry is
> > detached,
> > > it means that it is created by a node to which this entry does not
> > belong,
> > > and thus must not be locked.
> > >
> > > --AG
> > >
> > > 2017-03-22 18:37 GMT+03:00 ALEKSEY KUZNETSOV <alkuznetsov...@gmail.com
> >:
> > >
> > > > When optimistic transaction occures, there is a lock on entities -
> > > > org.apache.ignite.internal.processors.cache.transactions.
> > > > IgniteTxManager#lockMultiple
> > > > Don't you know, why there is a strange string inside this method :
> > > >
> > > > assert !entry1.detached() : "Expected non-detached entry for near
> > > > transaction " +
> > > >     "[locNodeId=" + cctx.localNodeId() + ", entry=" + entry1 + ']';
> > > >
> > > > As far as I know, detached entry is one, created by non-local node.
> > > >
> > > > ср, 22 мар. 2017 г. в 18:08, Alexander Fedotov <
> > > > alexander.fedot...@gmail.com
> > > > >:
> > > >
> > > > > Hi,
> > > > >
> > > > > These messages are part of 2-phase commit protocol.
> > > > > They are sent from a primary node to backup nodes.
> > > > >
> > > > >
> > > > > On Mon, Mar 20, 2017 at 7:41 PM, ALEKSEY KUZNETSOV <
> > > > > alkuznetsov...@gmail.com
> > > > > > wrote:
> > > > >
> > > > > > Hi all!
> > > > > > What is the point of sending GridDhtTxPrepareRequest and
> > > > > > GridDhtTxPrepareResponse messages?
> > > > > > What is the logic behind processDhtTxFinishRequest and
> > > > > > processDhtTxPrepareResponse ?
> > > > > > --
> > > > > >
> > > > > > *Best Regards,*
> > > > > >
> > > > > > *Kuznetsov Aleksey*
> > > > > >
> > > > >
> > > > >
> > > > >
> > > > > --
> > > > > Kind regards,
> > > > > Alex.
> > > > >
> > > > --
> > > >
> > > > *Best Regards,*
> > > >
> > > > *Kuznetsov Aleksey*
> > > >
> > >
> > --
> >
> > *Best Regards,*
> >
> > *Kuznetsov Aleksey*
> >
>
-- 

*Best Regards,*

*Kuznetsov Aleksey*

Reply via email to