[
https://issues.apache.org/jira/browse/IGNITE-1525?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15448714#comment-15448714
]
Semen Boikov commented on IGNITE-1525:
--------------------------------------
Hi Anton,
I reviewed fix, looks good, but still have few comments:
- could you please add test to check result of cache operations which return
boolean (e.g. putIfAbsent)
- please change GridDhtTxFinishRequest to pass 'retVal' as part of existing
'flags' and let's add 'flags' for GridDhtTxPrepareRequest
- please move move DeferredResponseBuffer to some common class to avoid
copy/paste
Thanks!
> Return value for cache operation can be lost with onePhaseCommit
> ----------------------------------------------------------------
>
> Key: IGNITE-1525
> URL: https://issues.apache.org/jira/browse/IGNITE-1525
> Project: Ignite
> Issue Type: Sub-task
> Components: cache
> Affects Versions: ignite-1.4
> Reporter: Semen Boikov
> Assignee: Anton Vinogradov
> Priority: Critical
> Fix For: 1.8
>
>
> Looks like with {{onePhaseCommit}} return value for cache operation can be
> lost if primary node fails, {{GridNearTxPrepareResponse}} with return value
> is not received, but transaction executes 'check backup' step and finishes
> without error.
> Reproduces in {{IgniteCachePutRetryTransactionalSelfTest.testInvoke}}, also
> added one more test to check return value
> {{IgniteCachePutRetryTransactionalSelfTest.testGetAndPut}}.
> Please unmute tests on TC when fixed.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)