Allow configuration changes without restarting configured nodes
---------------------------------------------------------------

                 Key: HADOOP-7001
                 URL: https://issues.apache.org/jira/browse/HADOOP-7001
             Project: Hadoop Common
          Issue Type: Task
            Reporter: Patrick Kling


Currently, changing the configuration on a node (e.g., the name node) requires 
that we restart the node. We propose a change that would allow us to make 
configuration changes without restarting. Nodes that support configuration 
changes at run time should implement the following interface:

interface ChangeableConfigured extends Configured {
   void changeConfiguration(Configuration newConf) throws 
ConfigurationChangeException;
}

The contract of changeConfiguration is as follows:
The node will compare newConf to the existing configuration. For each 
configuration property that is set to a different value than in the current 
configuration, the node will either adjust its behaviour to conform to the new 
configuration or throw a ConfigurationChangeException if this change is not 
possible at run time. If a configuration property is set in the current 
configuration but is unset in newConf, the node should use its default value 
for this property. After a successful invocation of changeConfiguration, the 
behaviour of the configured node should be indistinguishable from the behaviour 
of a node that was configured with newConf at creation.

It should be easy to change existing nodes to implement this interface. We can 
start by throwing the exception for all changes and then gradually start 
supporting more and more changes at run time. (We might even consider replacing 
Configured with ChangeableConfigured entirely, but I think the proposal above 
afford greater flexibility).




-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to