You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Semen Boikov (JIRA)" <ji...@apache.org> on 2016/03/14 16:11:33 UTC

[jira] [Commented] (IGNITE-2797) Prepare and finish future never time out

    [ https://issues.apache.org/jira/browse/IGNITE-2797?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15193455#comment-15193455 ] 

Semen Boikov commented on IGNITE-2797:
--------------------------------------

As first step added more tests for tx with timeout when 'lock' step fails because of timeout (CacheTxLockTimeoutTest).
One issue found: it seems that GridNearTxFinishRequest for timed out tx can be processed before GridNearLockRequest, in this case lock is not released (see 'testDelayNearLockRequest').

> Prepare and finish future never time out
> ----------------------------------------
>
>                 Key: IGNITE-2797
>                 URL: https://issues.apache.org/jira/browse/IGNITE-2797
>             Project: Ignite
>          Issue Type: Bug
>          Components: cache
>    Affects Versions: 1.5.0.final
>            Reporter: Valentin Kulichenko
>            Priority: Blocker
>              Labels: community, customer, important
>             Fix For: 1.6
>
>
> Even if transaction timeout is configured, transaction will not timeout if it's already in prepare state. It will be shown in log as pending transaction and can cause the whole cluster hang.
> We need to add a mechanism that will properly timeout prepare and (if possible) finish futures.
> Also we can create an event that will be fired if there is a transaction pending for a long time, showing which nodes we are waiting responses from. This will allow user to recover by stopping only these nodes instead of restarting the whole cluster.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)