[
https://issues.apache.org/jira/browse/IGNITE-19763?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Mirza Aliev updated IGNITE-19763:
---------------------------------
Epic Link: IGNITE-19743
> Changing empty stable assignments to not empty pending assignments.
> -------------------------------------------------------------------
>
> Key: IGNITE-19763
> URL: https://issues.apache.org/jira/browse/IGNITE-19763
> Project: Ignite
> Issue Type: Bug
> Reporter: Sergey Uttsel
> Priority: Major
> Labels: ignite-3, tech-debt
>
> h3. *Motivation*
> After https://issues.apache.org/jira/browse/IGNITE-19466 will be implemented
> It will be possible to create a table without data nodes in the distribution
> zone. Then we will face another issue.
> Current flow of changing pending assignments:
> # When the zone is updated and has a data nodes then the rebalance will
> start on new data nodes.
> # The method handleChangePendingAssignmentEvent receives an empty
> stableAssignments and not empty pendingAssignments.
> # handleChangePendingAssignmentEvent invokes startRaftGroupNode to start
> raft group node with stable assignment and start Replica,
> PartitionReplicaListener.
> # After that starts change peers on with pendingAssignments.
> It doesn't work properly because if previous stableAssignments is empty then
> it is not possible to start raft group. And if raft group is not started then
> it is not possible to change peers. So if stableAssignments is empty then
> need to skip starting raft group with this assignments and start new raft
> group with pendingAssignments.
> h3. *Definition of Done*
> Table without data nodes in the zone must process operations after data nodes
> are appeared.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)