Hi! There is GridCacheTxFinishSync synchronizer, which used to notify threads (waiting on GridCacheTxFinishSync.TxFinishSync#pendingFut) that GridNearTxFinishResponse is received.
Currently, only GridCacheTxFinishSync uses the synchronizer(but doesn't wait on it somehow). And it seems the synchronizer is useless. Do we really need to keep GridCacheTxFinishSync in a project? ср, 9 авг. 2017 г. в 17:13, ALEKSEY KUZNETSOV <alkuznetsov...@gmail.com>: > Hi, Igntrs! > > Currently we have context switching implemented for optimistic > transactions : https://issues.apache.org/jira/browse/IGNITE-5712. > > > > So, the next step is to implement it for pessimistic transactions : > https://issues.apache.org/jira/browse/IGNITE-5714 > > > > The problem with them lies in *IgniteTxAdapter#threadId*. Thread id is > transferred between nodes by GridDistributedTxPrepareRequest when key is > got locked. > > When we suspend and resume transaction, thread id is got changed locally, > but not on remote nodes. > > > > After studying the code, it seemed we can eliminate thread id from > transactions completely. > > For that reason, i want to start implementing additional tests, that will > cover transaction logic. Tickets would be created for them. > Later on I will provide test scenarious and send you. *Will appreciate > any ideas from you on new tests, thanks!* > > > > It will be the first step. The next one will be refactoring and > eliminating thread id. What do you think ? > > -- > > *Best Regards,* > > *Kuznetsov Aleksey* > -- *Best Regards,* *Kuznetsov Aleksey*