[
https://issues.apache.org/jira/browse/IGNITE-15083?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Alexander Lapin resolved IGNITE-15083.
--------------------------------------
Resolution: Duplicate
> Implement leaseholder selection and failover
> --------------------------------------------
>
> Key: IGNITE-15083
> URL: https://issues.apache.org/jira/browse/IGNITE-15083
> Project: Ignite
> Issue Type: Task
> Reporter: Alexey Scherbakov
> Priority: Major
> Labels: iep-61, ignite-3
>
> The tx design [1] assumes the presence of leaseholder (stronger form of a
> leader) for each partition raft group.
> * Leaseholder is used for reads without majority heartbeat
> * Leaseholder is used for lock requests processing.
> * Only one leaseholder should exists at a time.
> * Leaseholders map is stored in metastore (can be discovered by asking group
> members in the first approach)
> * Tx coordinators are subscribed for leaseholder status updates.
> The lease acquisiotion implementation details are open for now [2].
> Jraft includes expiration based leases (similar to yugabyte's), and this
> should be enough for the first approach.
> [1] https://github.com/apache/ignite-3/tree/main/modules/transactions
> [2] Cocroach and tikv use raft log based approach.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)