[ https://issues.apache.org/jira/browse/YARN-3539?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Steve Loughran updated YARN-3539: --------------------------------- Attachment: YARN-3539-004.patch Patch -004 this merges in YARN-1876, converting that to Markdown and replacing anything in patch -003 which is covered in YARN-1876. The only content retained from the 003 patch is # error codes # domains # a reference (but no detail) on the response to a timeline entity POST. Because this patch now contains YARN-1876, with its examples, it is a lot more thorough. One area that is not covered in the ATSv1 API is *what constitutes a valid entity type or domain?*. This is important, as the API & documentation implies that "a/b" is a valid ID...it may be accepted as such, but to do so would be an error. There is also the fact that the {{/domain}} path was added under {{/ws/v1/timeline/}}, so matches the path of entity types. Can you have an entity type called "domain"? Was it previously possible? I would propose # strictly defining what constitutes a valid entity type via a regular expression, and declaring whether the types are case sensitive. # declaring whether {{domain}} is a valid entity type Apart from {{/domain}}, there doesn't appear to be any restriction on entity type names. Any new path added under the {{/ws/v1/timeline/}} is therefore at risk of clashing with an applications use of ATS. Even a simple {{about/}} path is potentially backwards-incompatible, so cannot be added if the API is to be declared stable. Either a new path is used for extensions, or a once-and-for-all subpath is defined for extra attributes, e.g. {{/ws/v1/timeline/state}}, and that subpath (here {{state}}) declared to be an invalid entity type. > Compatibility doc to state that ATS v1 is a stable REST API > ----------------------------------------------------------- > > Key: YARN-3539 > URL: https://issues.apache.org/jira/browse/YARN-3539 > Project: Hadoop YARN > Issue Type: Improvement > Components: documentation > Affects Versions: 2.7.0 > Reporter: Steve Loughran > Assignee: Steve Loughran > Attachments: HADOOP-11826-001.patch, HADOOP-11826-002.patch, > YARN-3539-003.patch, YARN-3539-004.patch > > > The ATS v2 discussion and YARN-2423 have raised the question: "how stable are > the ATSv1 APIs"? > The existing compatibility document actually states that the History Server > is [a stable REST > API|http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/Compatibility.html#REST_APIs], > which effectively means that ATSv1 has already been declared as a stable API. > Clarify this by patching the compatibility document appropriately -- This message was sent by Atlassian JIRA (v6.3.4#6332)