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