[ 
https://issues.apache.org/jira/browse/HADOOP-3479?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12609958#action_12609958
 ] 

Hemanth Yamijala commented on HADOOP-3479:
------------------------------------------

It appears we need the overlay feature, after all. A failed test case in 
TestConfiguration when I made the change highlighted its use. 

Consider the following sequence of operations:

{code}
conf.addResource(someResource);
conf.set("somekey", "somevalue");
conf.addResource(someOtherResource);
{code}

At step 3, the properties object is cleared. If the overlay is not present, 
then it basically means that the value of "somekey" is lost at this point. The 
presence of the overlay makes the set values to come back when the resources 
are reloaded. Also, the reason it is called overlay seems to be because the 
values set via the setter methods override everything else. This is because 
they are added at the last step in the getProps method.

Thinking about this, it seemed to make sense to retain this behavior in 
reloadConfiguration, as in some way it is identical to addResource of all 
resources again in order.

So, in summary, the changes I made based on Doug's comments are:
- Modified the behavior of reloadConfiguration to not clear the overlaid 
properties
- Enhanced the test case of reload to make sure the overlay behavior is 
retained. This makes the testcase similar to the testOverlay method in 
TestConfiguration, which, very usefully, highlighted the need for the overlay 
feature.
- Calling reloadConfiguration from addResource
- Removed the first parameter of addResource, and since now the names would 
clash, renamed that method to addResourceObject.

> Implement configuration items useful for Hadoop resource manager (v1)
> ---------------------------------------------------------------------
>
>                 Key: HADOOP-3479
>                 URL: https://issues.apache.org/jira/browse/HADOOP-3479
>             Project: Hadoop Core
>          Issue Type: New Feature
>            Reporter: Hemanth Yamijala
>            Assignee: Hemanth Yamijala
>         Attachments: 3479.1.patch, 3479.2.patch, 3479.3.patch, 3479.patch
>
>
> HADOOP-3421 lists requirements for a new resource manager for Hadoop. 
> Implementation for these will require support for new configuration items in 
> Hadoop. This JIRA is to define such configuration, and track it's 
> implementation.

-- 
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