You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Roman Puchkovskiy (Jira)" <ji...@apache.org> on 2024/12/10 07:42:00 UTC
[jira] [Assigned] (IGNITE-23747) Support timeouts for RO transactions
[ https://issues.apache.org/jira/browse/IGNITE-23747?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Roman Puchkovskiy reassigned IGNITE-23747:
------------------------------------------
Assignee: Roman Puchkovskiy
> Support timeouts for RO transactions
> ------------------------------------
>
> Key: IGNITE-23747
> URL: https://issues.apache.org/jira/browse/IGNITE-23747
> Project: Ignite
> Issue Type: Improvement
> Reporter: Roman Puchkovskiy
> Assignee: Roman Puchkovskiy
> Priority: Major
> Labels: ignite-3, important
>
> TransactionOptions allows to specify a transaction timeout, but the timeout is not handled; even more, if it's set, an attempt to start a transaction fails because timeouts are not supported yet.
> We should support timeouts for RO transactions.
> For an RO transaction, a timeout defines maximum amount of time the transaction can hold LWMs on nodes participating in the transaction. That is, on any such node its local LWM can be held/locked only until txBeginTime + txTimeout (txBeginTime can be extracted from transactionId).
> If the user did not specify a timeout in TransactionOptions or did not provide TransactionOptions when creating an RO transaction, a default timeout is used; it is to be defined, but cannot be infinite.
> Definition of done:
> # It's possible to start an RO transaction with a timeout
> # When registering an RO transaction with a local LWM, its timeout defines the moment when the registration will automatically be cancelled (allowing the LWM to proceed and making the transaction expired on this node)
> # A default timeout is used if not provided by the user
--
This message was sent by Atlassian Jira
(v8.20.10#820010)