[ https://issues.apache.org/jira/browse/IGNITE-19580?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Mirza Aliev updated IGNITE-19580: --------------------------------- Description: In https://issues.apache.org/jira/browse/IGNITE-19061 we have provided design for a correct restart of a node and recovering all Distributed Zones states. In this ticket we want to restore {{DistributionZoneManager.ZoneState}} per every zone. Note that in this ticket we don't want to take into account immediate scale up when filter was changed, this will be done in a separate ticket (https://issues.apache.org/jira/browse/IGNITE-19581). h3. The overall flow is the following: We need to save topologyAugmentationMap to Vault synchronously on metastorage watch listener for zonesLogicalTopologyPrefix. This is the only place where topologyAugmentationMap are changed. So, when restart, for every zone from configuration, when {{onCreate}} for every zone is called, restore topologyAugmentationMap from Vault. After that restoring the values for these local fields will be as they were before restart. After that schedule scale Up timer with {{maxScUpFromMap}} and schedule a scale down timer with {{maxScDownFromMap}}. Details could be found in the design document. As a result, zones' states must be restored to the state that they had before restart. It includes data nodes field, topologyAugmentationMap, and all scheduled before restart timers. was: In https://issues.apache.org/jira/browse/IGNITE-19061 we have provided design for a correct restart of a node and recovering all Distributed Zones states. In this ticket we want to restore {{DistributionZoneManager.ZoneState}} per every zone. Note that in this ticket we don't want to take into account immediate scale up when filter was changed, this will be done in a separate ticket (https://issues.apache.org/jira/browse/IGNITE-19581). h5. The overall flow is the following: We need to save topologyAugmentationMap to Vault synchronously on metastorage watch listener for zonesLogicalTopologyPrefix. This is the only place where topologyAugmentationMap are changed. So, when restart, for every zone from configuration, when {{onCreate}} for every zone is called, restore topologyAugmentationMap from Vault. After that restoring the values for these local fields will be as they were before restart. After that schedule scale Up timer with {{maxScUpFromMap}} and schedule a scale down timer with {{maxScDownFromMap}}. Details could be found in the design document. As a result, zones' states must be restored to the state that they had before restart. It includes data nodes field, topologyAugmentationMap, and all scheduled before restart timers. > Implement restoring of zones states of DistributionZoneManager after restart > ---------------------------------------------------------------------------- > > Key: IGNITE-19580 > URL: https://issues.apache.org/jira/browse/IGNITE-19580 > Project: Ignite > Issue Type: Bug > Reporter: Mirza Aliev > Priority: Major > Labels: ignite-3 > > In https://issues.apache.org/jira/browse/IGNITE-19061 we have provided design > for a correct restart of a node and recovering all Distributed Zones states. > In this ticket we want to restore {{DistributionZoneManager.ZoneState}} per > every zone. Note that in this ticket we don't want to take into account > immediate scale up when filter was changed, this will be done in a separate > ticket (https://issues.apache.org/jira/browse/IGNITE-19581). > h3. The overall flow is the following: > We need to save topologyAugmentationMap to Vault synchronously on metastorage > watch listener for zonesLogicalTopologyPrefix. This is the only place where > topologyAugmentationMap are changed. So, when restart, for every zone from > configuration, when {{onCreate}} for every zone is called, restore > topologyAugmentationMap from Vault. After that restoring the values for these > local fields will be as they were before restart. After that schedule scale > Up timer with {{maxScUpFromMap}} and schedule a scale down timer with > {{maxScDownFromMap}}. > Details could be found in the design document. > As a result, zones' states must be restored to the state that they had before > restart. It includes data nodes field, topologyAugmentationMap, and all > scheduled before restart timers. -- This message was sent by Atlassian Jira (v8.20.10#820010)