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

Ignite TC Bot commented on IGNITE-15083:
----------------------------------------

{panel:title=Branch: [pull/11750/head] Base: [master] : No blockers 
found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}{panel}
{panel:title=Branch: [pull/11750/head] Base: [master] : No new tests 
found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#F7D6C1}{panel}
[TeamCity *--> Run :: All* 
Results|https://ci2.ignite.apache.org/viewLog.html?buildId=8218801&buildTypeId=IgniteTests24Java8_RunAll]

> 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
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> 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)

Reply via email to