hadoop-general mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sanjay Radia <sra...@yahoo-inc.com>
Subject Re: LimitedPrivate and HBase
Date Tue, 14 Jun 2011 19:58:05 GMT

On Jun 9, 2011, at 10:27 AM, Tom White wrote:

> Looking at current usage in Hadoop, there are only 4 LimitedPrivate
> references to HBase (the http, io.retry, ipc, and metrics packages in
> Common), and 2 references to Pig (the two LineRecordReader classes in
> MapReduce). The other LimitedPrivate references are all to HDFS or
> MapReduce. Given that Private means "Intended for use only within
> Hadoop itself" (according to the javadoc), we can replace these
> references with Private.

Okay so that was incorrectly stated in the Javadoc - if you read
> We could also change the remaining 6 cases of LimitedPrivate to Public
> (note that they are already annotated Evolving or Unstable), and
> deprecate LimitedPrivate. Would this allay people's concerns?

I disagree with the proposed changes.

Most folks are missing the point of limited private.
The Jira (HADOOP-5073)  that created this classification gives a very  
detailed explanation of the motivation and purpose of the  
Unfortunately most of the explanation in Jira were not copied to the  
Javadoc. My mistake here.
I will file a jira to copy the classification documentation from the  
Jira to a  Javadoc.

BTW the the javadoc is incorrect
>  Private means "Intended for use only within
> Hadoop itself" (according to the javadoc)

The definition in the Jira (Hadoop-5073) explains that private means  
project private.  It is private to HDFS or private to MR etc. Private  
does not mean private to Hadoop - otherwise MR can use any internal  
private class inside HDFS. We don't want that.
When we did the actual annotation tags the words project-private was  
simplified to private since folks felt it was too verbose.

The Jira states:
the interface is for internal use within the project and should not be  
used by applications. It is subject to change at anytime without  
notice. Most interfaces of a project are project private.

My mistake for not checking the actual javadoc carefully when Jacob's   
annotations patch was committed.
I will file a jira to copy the document from the Jira to the Javadoc.

I will post a longer email explaining my position and my -1 more  
clearly after I have had a chance to read all the emails carefully.


  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message