[ 
https://issues.apache.org/jira/browse/MAPREDUCE-6205?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14262063#comment-14262063
 ] 

sam liu commented on MAPREDUCE-6205:
------------------------------------

Gera,

Yes, there is an existing deprecation deltas 
"mapred.map|reduce.child.java.opts" -> "mapreduce.map|reduce.java.opts". 

However, after I add the deprecation delta as " mapred.child.java.opts" ->  
"mapred.map|reduce.child.java.opts", the test 
TestWritableJobConf#testEmptyConfiguration() failed. In this test, it compares 
two configurations(conf and deser):
-conf:  JobConf conf = new JobConf();
-deser: Configuration deser = serDeser(conf);

[A] Before I added the new deprecation delta, I got following output during 
running this test and the test passed.
[A.1] The properties of 'conf':
mapred.child.java.opts=-Xmx200m
2014-12-31 01:13:12,092 INFO  [main] Configuration.deprecation 
(Configuration.java:warnOnceIfDeprecated(1013)) - mapred.map.child.java.opts is 
deprecated. Instead, use mapreduce.map.java.opts
mapred.map.child.java.opts=null
2014-12-31 01:13:12,107 INFO  [main] Configuration.deprecation 
(Configuration.java:warnOnceIfDeprecated(1013)) - mapred.reduce.child.java.opts 
is deprecated. Instead, use mapreduce.reduce.java.opts
mapred.reduce.child.java.opts=null
mapreduce.map.java.opts=null
mapreduce.reduce.java.opts=null
[A.2] The properties of 'deser':
mapred.child.java.opts=-Xmx200m
mapred.map.child.java.opts=null
mapred.reduce.child.java.opts=null
mapreduce.map.java.opts=null
mapreduce.reduce.java.opts=null

[B] After I added the new deprecation delta, I got following output during 
running this test and the test failed.
[B.1] The properties of 'conf':
2014-12-31 01:06:22,313 INFO  [main] Configuration.deprecation 
(Configuration.java:warnOnceIfDeprecated(1013)) - mapred.child.java.opts is 
deprecated. Instead, use mapred.map.child.java.opts, 
mapred.reduce.child.java.opts
mapred.child.java.opts=-Xmx200m
mapred.map.child.java.opts=null
mapred.reduce.child.java.opts=null
mapreduce.map.java.opts=null
mapreduce.reduce.java.opts=null
[B.2] The properties of 'deser':
mapred.child.java.opts=-Xmx200m
mapred.map.child.java.opts=-Xmx200m
mapred.reduce.child.java.opts=-Xmx200m
mapreduce.map.java.opts=-Xmx200m
mapreduce.reduce.java.opts=-Xmx200m

Furthermore, if I did not add the deprecation delta as "mapred.child.java.opts" 
->  "mapred.map|reduce.child.java.opts", but add the deprecation delta as 
"mapred.child.java.opts" ->  "mapreduce.map|reduce.java.opts",  the test 
TestWritableJobConf#testEmptyConfiguration() could pass.

What's your opinion?

Thanks!


> Update the value of the new version properties of the deprecated property 
> "mapred.child.java.opts"
> --------------------------------------------------------------------------------------------------
>
>                 Key: MAPREDUCE-6205
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-6205
>             Project: Hadoop Map/Reduce
>          Issue Type: Bug
>          Components: mrv2
>    Affects Versions: trunk
>            Reporter: sam liu
>            Assignee: sam liu
>            Priority: Minor
>         Attachments: MAPREDUCE-6205.patch, MAPREDUCE-6205.patch
>
>
> In current hadoop code, the old property "mapred.child.java.opts" is 
> deprecated and its new versions are MRJobConfig.MAP_JAVA_OPTS and 
> MRJobConfig.REDUCE_JAVA_OPTS. However, when user set a value to the 
> deprecated property "mapred.child.java.opts", hadoop won't automatically 
> update its new versions properties 
> MRJobConfig.MAP_JAVA_OPTS("mapreduce.map.java.opts") and 
> MRJobConfig.REDUCE_JAVA_OPTS("mapreduce.reduce.java.opts"). As hadoop will 
> update the new version properties for many other deprecated properties, we 
> also should support such feature on the old property 
> "mapred.child.java.opts", otherwise it might bring some imcompatible issues.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to