[
https://issues.apache.org/jira/browse/IGNITE-28419?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Denis Chudov updated IGNITE-28419:
----------------------------------
Description:
The scope of IGNITE-18879 is only balancing in the time of election. Meanwhile,
the leases can be disbalanced during the cluster's lifetime due to node
restarts and failures.
This is a crude first implementation to use in emergencies.
The algorithm is (all APIs are illustration-only):
# The user invokes `partitions rebalance-primaries --no-wait-lease`.
# The placement driver identifies all partitions `P` that need to be
rebalanced from their current replica leases `L`.
# The placement driver tells the node `L.leaseholderId` to give up the lease
at the end of the current term, and not to attempt to be elected in the next
term.
# In the next election, a new primary is elected.
The downsides:
- Many transactions will fail with "Primary replica has changed".
The balancing itself should be provided by mechanisms implemented in
IGNITE-18879
was:
This is a crude first implementation to use in emergencies.
The algorithm is (all APIs are illustration-only):
# The user invokes `partitions rebalance-primaries --no-wait-lease`.
# The placement driver identifies all partitions `P` that need to be
rebalanced from their current replica leases `L`.
# The placement driver tells the node `L.leaseholderId` to give up the lease
at the end of the current term, and not to attempt to be elected in the next
term.
# In the next election, a new primary is elected.
The downsides:
- Many transactions will fail with "Primary replica has changed".
The balancing itself should be provided by mechanisms implemented in
IGNITE-18879
> Leaseholder balancing: Ungraceful replica switch + manual invocation
> --------------------------------------------------------------------
>
> Key: IGNITE-28419
> URL: https://issues.apache.org/jira/browse/IGNITE-28419
> Project: Ignite
> Issue Type: Improvement
> Components: placement driver ai3
> Reporter: Denis Chudov
> Priority: Major
> Labels: ignite-3
>
> The scope of IGNITE-18879 is only balancing in the time of election.
> Meanwhile, the leases can be disbalanced during the cluster's lifetime due to
> node restarts and failures.
> This is a crude first implementation to use in emergencies.
> The algorithm is (all APIs are illustration-only):
> # The user invokes `partitions rebalance-primaries --no-wait-lease`.
> # The placement driver identifies all partitions `P` that need to be
> rebalanced from their current replica leases `L`.
> # The placement driver tells the node `L.leaseholderId` to give up the lease
> at the end of the current term, and not to attempt to be elected in the next
> term.
> # In the next election, a new primary is elected.
> The downsides:
> - Many transactions will fail with "Primary replica has changed".
> The balancing itself should be provided by mechanisms implemented in
> IGNITE-18879
--
This message was sent by Atlassian Jira
(v8.20.10#820010)