[ 
https://issues.apache.org/jira/browse/HADOOP-10506?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14003318#comment-14003318
 ] 

Thomas Graves commented on HADOOP-10506:
----------------------------------------

Sorry for my delay, I somehow missed your comment go by. 

One of the main ones is UserGroupInformation.  As I mentioned above, you can 
tell just by how many components are listed in the LimitedPrivate clause. 

I've filed separate jira in YARN land for a few there also.  Vinod nicely 
bundled them under https://issues.apache.org/jira/browse/YARN-1953.

I've been distracted by other things recently though and haven't finished 
trying to convert everything to public interfaces so there are likely a few 
more. 

Since there haven't been any other disagreements with this perhaps I will file 
a jira to atleast update the docs about LimitedPrivate for the 2 bullets I 
mention above:

1) clarify documentation what limitedPrivate is. This means us internally 
agreeing on what it really means. 
2) No new classes/interfaces should use this tag. They should be properly 
classified as either public or private. If there was a bug and class not 
properly tagged its fine to use there.

> LimitedPrivate annotation not useful
> ------------------------------------
>
>                 Key: HADOOP-10506
>                 URL: https://issues.apache.org/jira/browse/HADOOP-10506
>             Project: Hadoop Common
>          Issue Type: Bug
>    Affects Versions: 3.0.0, 2.4.0
>            Reporter: Thomas Graves
>
> The LimitedPrivate annotation isn't useful.  The intention seems to have been 
> those interfaces were only intended to be used by these components.  But in 
> many cases those components are separate from core hadoop.  This means any 
> changes to them will break backwards compatibility with those, which breaks 
> the new compatibility rules in Hadoop.  
> Note that many of the annotation are also not marked properly, or have fallen 
> out of date.  I see Public Interfaces that use LimitedPrivate classes in the 
> api.  (TokenCache using Credentials is an example). 



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to