[
https://issues.apache.org/jira/browse/MAPREDUCE-6174?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14558884#comment-14558884
]
Gera Shegalov commented on MAPREDUCE-6174:
------------------------------------------
Thanks for 005 patch, [~eepayne]!
In IFileWrappedMapOutput, we can make {{conf}} and {{merger}} final fields.
You are right, I misspoke regarding {{mapOutputFile}} in ODMO constructors.
Since the old constructors are public and package-scope, respectively, I
suggest we keep both signatures unchanged for robust backwards-compatibility,
and annotate them as deprecated.
We can introduce a third package-scope constructor:
{code}
OnDiskMapOutput(TaskAttemptID mapId,
MergeManagerImpl<K,V> merger, long size,
JobConf conf,
int fetcher, boolean primaryMapOutput,
FileSystem fs, Path outputPath) throws IOException {
super(conf, merger, mapId, size, primaryMapOutput);
this.fs = fs;
this.outputPath = outputPath;
tmpOutputPath = getTempPath(outputPath, fetcher);
disk = CryptoUtils.wrapIfNecessary(conf, fs.create(tmpOutputPath));
}
{code}
It can be used to implement both old constructors via this and for
MergeManagerImpl.
> Combine common stream code into parent class for InMemoryMapOutput and
> OnDiskMapOutput.
> ---------------------------------------------------------------------------------------
>
> Key: MAPREDUCE-6174
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-6174
> Project: Hadoop Map/Reduce
> Issue Type: Improvement
> Components: mrv2
> Affects Versions: 3.0.0, 2.6.0
> Reporter: Eric Payne
> Assignee: Eric Payne
> Labels: BB2015-05-RFC
> Attachments: MAPREDUCE-6174.002.patch, MAPREDUCE-6174.003.patch,
> MAPREDUCE-6174.004.patch, MAPREDUCE-6174.005.patch, MAPREDUCE-6174.v1.txt
>
>
> Per MAPREDUCE-6166, both InMemoryMapOutput and OnDiskMapOutput will be doing
> similar things with regards to IFile streams.
> In order to make it explicit that InMemoryMapOutput and OnDiskMapOutput are
> different from 3rd-party implementations, this JIRA will make them subclass a
> common class (see
> https://issues.apache.org/jira/browse/MAPREDUCE-6166?focusedCommentId=14223368&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14223368)
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)