hadoop-mapreduce-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tom White (JIRA)" <j...@apache.org>
Subject [jira] Commented: (MAPREDUCE-1623) Apply audience and stability annotations to classes in mapred package
Date Mon, 26 Apr 2010 05:02:10 GMT

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

Tom White commented on MAPREDUCE-1623:

Thanks for the review, Chris.

bq. * The contents of the {{jobhistory}} package can probably be public evolving.

Agree with Amareshwari that not all of the package is public, and that we probably need a
public API to it, but it's not clear what it is yet. By marking as public evolving we can
evolve it to make things private that should be private. The other way works too - mark it
private unstable or evolving and make public the parts that need to be made public in a later
release. I can go either way.

bq. * Should the {{o.a.h.util}} package also be marked as Private?

Yes, given that the classes moved to {{o.a.h.mapreduce.util}}, which is private.

bq. * Should the {{mapreduce.filecache}} package also be marked as Private, if javadoc were
returned to {{o.a.h.filecache.DistributedCache}}?

I'm a bit confused about what happened here. In 0.20 there was only {{o.a.h.filecache.DistributedCache}},
which was actually in Core. It's been deprecated in trunk in favour of {{o.a.h.filecache.mapreduce.DistributedCache}},
but this has been deprecated too - in favour of methods on {{Job}}. So, yes, {{mapreduce.filecache}}
package should be Private, and the deprecation message on {{o.a.h.filecache.DistributedCache}}
should direct users to {{Job}}.

bq. * The warnings in javadoc are redundant with the annotations, particulary given MAPREDUCE-1650
("This class is internal only and not intended for users\!\!", {{<FRAMEWORK-USE-ONLY>}},
"This is NOT a public interface!", etc.). Attached an updated patch removing them.

Thanks for updating the patch with this. Is this the only change you made? (It's hard to see
with such a big patch.)

I'll create a new patch with the above changes.

> Apply audience and stability annotations to classes in mapred package
> ---------------------------------------------------------------------
>                 Key: MAPREDUCE-1623
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-1623
>             Project: Hadoop Map/Reduce
>          Issue Type: Sub-task
>          Components: documentation
>            Reporter: Tom White
>            Assignee: Tom White
>         Attachments: M1623-1.patch, MAPREDUCE-1623.patch, MAPREDUCE-1623.patch, MAPREDUCE-1623.patch,
> There are lots of implementation classes in org.apache.hadoop.mapred which makes it difficult
to see the user-level MapReduce API classes in the Javadoc. (See http://hadoop.apache.org/common/docs/r0.20.2/api/org/apache/hadoop/mapred/package-summary.html
for example.) By marking these implementation classes with the InterfaceAudience.Private annotation
we can exclude them from user Javadoc (using HADOOP-6658).
> Later work will move the implementation classes into o.a.h.mapreduce.server and related
packages (see MAPREDUCE-561), but applying the annotations is a good first step. 

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message