You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Kirill Gusakov (Jira)" <ji...@apache.org> on 2024/04/12 13:33:00 UTC

[jira] [Updated] (IGNITE-22036) Replace TableManager.changePeersOnRebalance by the broadcast ReplicaRequest

     [ https://issues.apache.org/jira/browse/IGNITE-22036?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Kirill Gusakov updated IGNITE-22036:
------------------------------------
    Description: 
*Motivation*

To simplify the process of moving to the zone-based collocation we need to remove all raft-connected code from TableManager. After IGNITE-21805 we will still have:
- TableManager.changePeersOnRebalance

This method must be replaced by appropriate request to Replica.

Definition of done
- TableManager send the broadcast ChangePeersReplicaRequest to all nodes from table partition assignments instead of direct call to raft changePeersAsync

Implementation details:
We need to:
- Introduce ChangePeersReplicaRequest(PeersAndLearners peersAndLearners) - the new replica request type
- Move the code from TableManager.changePeersOnRebalance to the Replica itself, as a reaction to ChangePeersReplicaRequest
- TableManager must send the ChangePeersReplicaRequest to all nodes from table partition assignments instead of direct TableManager.changePeersOnRebalance call

> Replace TableManager.changePeersOnRebalance by the broadcast ReplicaRequest
> ---------------------------------------------------------------------------
>
>                 Key: IGNITE-22036
>                 URL: https://issues.apache.org/jira/browse/IGNITE-22036
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Kirill Gusakov
>            Priority: Major
>
> *Motivation*
> To simplify the process of moving to the zone-based collocation we need to remove all raft-connected code from TableManager. After IGNITE-21805 we will still have:
> - TableManager.changePeersOnRebalance
> This method must be replaced by appropriate request to Replica.
> Definition of done
> - TableManager send the broadcast ChangePeersReplicaRequest to all nodes from table partition assignments instead of direct call to raft changePeersAsync
> Implementation details:
> We need to:
> - Introduce ChangePeersReplicaRequest(PeersAndLearners peersAndLearners) - the new replica request type
> - Move the code from TableManager.changePeersOnRebalance to the Replica itself, as a reaction to ChangePeersReplicaRequest
> - TableManager must send the ChangePeersReplicaRequest to all nodes from table partition assignments instead of direct TableManager.changePeersOnRebalance call



--
This message was sent by Atlassian Jira
(v8.20.10#820010)