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

Kirill Tkalenko updated IGNITE-16263:
-------------------------------------
    Description: 
In some cases, a node required to start over not empty configuration: it is a 
scenario of recovery (a node restart after shutdown) or scenario when a node 
joins to the cluster with a long history (the cluster does not have full 
history for Metastorage).

In these cases, a cluster state cannot restore itself by configuration updates 
(because it has only final state in Vault). But if all components listeners are 
invoked, the component can restore in-memory state.

Need to propagate the restored configuration to all configuration listeners 
(invoke them after all properties loaded from a storage 
ConfigurationStorage#readAll).

After discussion with [~ibessonov], [~v.pyatkov] and [~alapin] decided:
* call all listeners + *any()* for local and distributed configurations;
* call methods *ConfigurationListener#onUpdate* and 
*ConfigurationNamedListListener#onCreate*.

  was:
In some cases, a node required to start over not empty configuration: it is a 
scenario of recovery (a node restart after shutdown) or scenario when a node 
joins to the cluster with a long history (the cluster does not have full 
history for Metastorage).

In these cases, a cluster state cannot restore itself by configuration updates 
(because it has only final state in Vault). But if all components listeners are 
invoked, the component can restore in-memory state.

Need to propagate the restored configuration to all configuration listeners 
(invoke them after all properties loaded from a storage 
ConfigurationStorage#readAll).

After discussion with [~ibessonov], [~v.pyatkov] and Sasha decided:


> Invoke configuration listeners when components were restored
> ------------------------------------------------------------
>
>                 Key: IGNITE-16263
>                 URL: https://issues.apache.org/jira/browse/IGNITE-16263
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Vladislav Pyatkov
>            Assignee: Kirill Tkalenko
>            Priority: Major
>              Labels: ignite-3
>             Fix For: 3.0.0-alpha5
>
>
> In some cases, a node required to start over not empty configuration: it is a 
> scenario of recovery (a node restart after shutdown) or scenario when a node 
> joins to the cluster with a long history (the cluster does not have full 
> history for Metastorage).
> In these cases, a cluster state cannot restore itself by configuration 
> updates (because it has only final state in Vault). But if all components 
> listeners are invoked, the component can restore in-memory state.
> Need to propagate the restored configuration to all configuration listeners 
> (invoke them after all properties loaded from a storage 
> ConfigurationStorage#readAll).
> After discussion with [~ibessonov], [~v.pyatkov] and [~alapin] decided:
> * call all listeners + *any()* for local and distributed configurations;
> * call methods *ConfigurationListener#onUpdate* and 
> *ConfigurationNamedListListener#onCreate*.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to