Robert Kanter created YARN-5515:
-----------------------------------

             Summary: Compatibility Docs should clarify the policy for what 
takes precedence when a conflict is found
                 Key: YARN-5515
                 URL: https://issues.apache.org/jira/browse/YARN-5515
             Project: Hadoop YARN
          Issue Type: Task
          Components: documentation
    Affects Versions: 2.7.2
            Reporter: Robert Kanter


The Compatibility Docs 
(https://hadoop.apache.org/docs/r2.7.1/hadoop-project-dist/hadoop-common/Compatibility.html#Java_API)
 list the policies for Private, Public, not annotated, etc Classes and members, 
but it doesn't say what happens when there's a conflict.  We should try 
obviously try to avoid this situation, but it would be good to explicitly state 
what takes precedence.

As an example, until YARN-3225 made it consistent, {{RefreshNodesRequest}} 
looked like this:
{code:java}
@Private
@Stable
public abstract class RefreshNodesRequest {
  @Public
  @Stable
  public static RefreshNodesRequest newInstance() {
    RefreshNodesRequest request = Records.newRecord(RefreshNodesRequest.class);
    return request;
  }
}
{code}
Note that the class is marked {{\@Private}}, but the method is marked 
{{\@Public}}.

In this example, I'd say that the class level should have priority.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: yarn-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: yarn-issues-h...@hadoop.apache.org

Reply via email to