[
https://issues.apache.org/jira/browse/IGNITE-19336?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Vladimir Steshin updated IGNITE-19336:
--------------------------------------
Description:
Regarding [1], during a transaction some conversation messages can be lost or
delayed. Like the lock response, prepare response or finish responses. If
transaction delays for long, user should expect a timeout and returned control
to the application.
However, if finish responses are lost or delayed on the finish phase
_Transaction#commit()_ can hang forever.
The same happens even if the prepare response are delayed from backup on
prepare phase in the case of one-phase-commit.
There is a point [2]. Probably we can't rollback on commit phase.
But we might not rollback, only warn user of long commit, complete the futures
and,for example, suggest an investigation.
[1] https://cwiki.apache.org/confluence/display/IGNITE/Data+consistency
[2] https://issues.apache.org/jira/browse/IGNITE-6181
was:
Regarding [1], during a transaction some conversation messages can be lost or
delayed. Like the lock response, prepare response or finish responses. If
transaction delays for long, user should expect a timeout and returned control
to the application. However, after the prepare phase _Transaction#commit()_ can
hang forever.
There is a point [2]. Probably we can't rollback on commit phase.
But we might not rollback, only warn user of long commit, complete the futures
and,for example, suggest an investigation.
[1] https://cwiki.apache.org/confluence/display/IGNITE/Data+consistency
[2] https://issues.apache.org/jira/browse/IGNITE-6181
> No action or warning after transaction timeout on commit phase.
> ---------------------------------------------------------------
>
> Key: IGNITE-19336
> URL: https://issues.apache.org/jira/browse/IGNITE-19336
> Project: Ignite
> Issue Type: Bug
> Reporter: Vladimir Steshin
> Priority: Minor
> Attachments: TransactionLosesFinishResponsesTimeoutTest.java
>
>
> Regarding [1], during a transaction some conversation messages can be lost or
> delayed. Like the lock response, prepare response or finish responses. If
> transaction delays for long, user should expect a timeout and returned
> control to the application.
> However, if finish responses are lost or delayed on the finish phase
> _Transaction#commit()_ can hang forever.
> The same happens even if the prepare response are delayed from backup on
> prepare phase in the case of one-phase-commit.
> There is a point [2]. Probably we can't rollback on commit phase.
> But we might not rollback, only warn user of long commit, complete the
> futures and,for example, suggest an investigation.
> [1] https://cwiki.apache.org/confluence/display/IGNITE/Data+consistency
> [2] https://issues.apache.org/jira/browse/IGNITE-6181
--
This message was sent by Atlassian Jira
(v8.20.10#820010)