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

Karthik Kambatla commented on YARN-5184:
----------------------------------------

I would think this falls under the purview of API compatibility. To make 
incompatible changes, we need to deprecate it for a major release first. In 
that sense, we should do a fix for trunk as well. I am open to adding a new 
notion of API compatibility for class extensions, and call out potential 
incompatibilities on major releases. I am also open to adding a new annotation 
called Extendable if we think that is helpful. 

In the patch, the methods throw UnsupportedException. I had suggested this in 
an offline discussion with Sangjin, but I am not sure about it now. With this 
update, the downstream classes would continue to compile. This, however, can 
lead to RuntimeExceptions which is likely worse than compile time issues. I 
guess it depends on whether these methods end up being called. I can't think of 
a good solution, but thought I should bring this up. 

> Fix up incompatible changes introduced on ContainerStatus and NodeReport
> ------------------------------------------------------------------------
>
>                 Key: YARN-5184
>                 URL: https://issues.apache.org/jira/browse/YARN-5184
>             Project: Hadoop YARN
>          Issue Type: Bug
>          Components: api
>    Affects Versions: 2.9.0
>            Reporter: Karthik Kambatla
>            Assignee: Karthik Kambatla
>            Priority: Blocker
>         Attachments: YARN-5184-branch-2.8.poc.patch, 
> YARN-5184-branch-2.poc.patch
>
>
> YARN-2882 and YARN-5430 broke compatibility by adding abstract methods to 
> ContainerStatus. Since ContainerStatus is a Public-Stable class, adding 
> abstract methods to this class breaks any extensions. 
> To fix this, we should add default implementations to these new methods and 
> not leave them as abstract. 



--
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