hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tom White (JIRA)" <j...@apache.org>
Subject [jira] Updated: (HADOOP-6668) Apply audience and stability annotations to classes in common
Date Fri, 14 May 2010 20:42:45 GMT

     [ https://issues.apache.org/jira/browse/HADOOP-6668?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Tom White updated HADOOP-6668:
------------------------------

    Attachment: HADOOP-6668.patch

Thanks for the detailed feedback, Sanjay. I have produced a new patch which addresses all
your points (see below). I've also gone through and added Public Stable to those classes where
I had left it implicit. As you said, this is getting close now.

> * ContentSummary, FsServerDefaults Public, Evolving.  But all the writable methods are
Private.

Agreed - done.

> * PositionedReadable, Seekable and Syncable - there was an internal debate in my corridor
 on this - lets discuss this on the jira.

I think these are user-facing, hence Public. Seekable#seekToNewSource should be private though,
since it's an internal method.

> * security classes limited private evolving

OK - done. But do we need further changes given MAPREDUCE-1651?

> * DF, DU used by HDFS and MR for checking localfs - hence limitedPrivate evolving

Done

> * FsShell - we are only exposing bin/hadoop fs; FsShell is an implementation of it. Hence
private

Done

> * Trash - private - the public cmds delete and expunge cmds expose the functionality

I think the intent is for users to be able to move files to trash, and expunge trash, from
Java programs. I think Hive and Pig may use it too. So I  think it's Public Stable (or Evolving
perhaps).

> * Metrics - see my detailed comment above

Done

> * The io.serializer classes are private but the class name is public since it can be
specified in config (use the same solution as proposed for  metric plugins.

I made the serializer classes LimitedPrivate (HDFS, MapReduce), and left the Serialization
implementations Public, but with Private methods.

> * GenericOptionsParser, private but Tool, ToolRunner public.

OK - done.

> * ReflectionUtils,  limited private.

Client code may use ReflectionUtils.newInstance() - so I would suggest Public Evolving.


> Apply audience and stability annotations to classes in common
> -------------------------------------------------------------
>
>                 Key: HADOOP-6668
>                 URL: https://issues.apache.org/jira/browse/HADOOP-6668
>             Project: Hadoop Common
>          Issue Type: Sub-task
>          Components: documentation
>            Reporter: Tom White
>            Assignee: Tom White
>            Priority: Blocker
>             Fix For: 0.21.0
>
>         Attachments: common.interface-tw-annotated.txt, HADOOP-6668.patch, HADOOP-6668.patch,
HADOOP-6668.patch, HADOOP-6668.patch, HADOOP-6668.patch, HADOOP-6668.patch, HADOOP-6668.patch
>
>
> Mark private implementation classes with the InterfaceAudience.Private or InterfaceAudience.LimitedPrivate
annotation to exclude them from user Javadoc and JDiff.

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


Mime
View raw message