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

Sreekanth Ramakrishnan commented on HADOOP-6105:
------------------------------------------------

Took a look at the patch following are the comments which I had on the same:
* {{org.apache.hadoop.conf.Configuration.addDeprecation(String, String[])}} 
should be made public so classes can access it.
* We dont need to call {{Class.newInstance()}} as we assume that child classes 
would have static block which would add deprecated keys, so during class 
loading we will take care of it.
* We should make the process deprecation and data structures all multi-threaded.
* Finally, we should handle the cases where one or all of the keys which are 
defined in extra.conf are not present in class path. I would suggest 
suppressing exception and logging it in debug mode.
* lastly move the loaded deprecation boolean as last line in process 
deprecation.

We should also take care that deprecated keys are not going to be reloaded and 
reprocessed with {{Configuration.reload()}} method.

* Define the key in core-default.xml and make the same final.

> Provide a way to automatically handle backward compatibility of deprecated 
> keys
> -------------------------------------------------------------------------------
>
>                 Key: HADOOP-6105
>                 URL: https://issues.apache.org/jira/browse/HADOOP-6105
>             Project: Hadoop Common
>          Issue Type: Improvement
>          Components: conf
>            Reporter: Hemanth Yamijala
>            Assignee: V.V.Chaitanya Krishna
>         Attachments: HADOOP-6105-1.patch, HADOOP-6105-2.patch, 
> HADOOP-6105-3.patch, HADOOP-6105-4.patch, HADOOP-6105-5.patch, 
> HADOOP-6105-6.patch, HADOOP-6105.patch, HADOOP-6105.patch
>
>
> There are cases when we have had to deprecate configuration keys. Use cases 
> include, changing the names of variables to better match intent, splitting a 
> single parameter into two - for maps, reduces etc.
> In such cases, we typically provide a backwards compatible option for the old 
> keys. The handling of such cases might typically be common enough to actually 
> add support for it in a generic fashion in the Configuration class. Some 
> initial discussion around this started in HADOOP-5919, but since the project 
> split happened in between we decided to open this issue to fix it in common.

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