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

Eric Yang commented on YARN-9560:
---------------------------------

# All of node manager logic are marked with:
{code:java}
  @InterfaceAudience.Private
  @InterfaceStability.Unstable
  {code}
To prevent javadoc generation for private API. The current change will generate 
OCIContainerRuntime as public API. This is a big commitment change, and I am 
not sure that YARN is ready to expose this abstract class as a reference 
implementation.

 # . It would be better to have YARN sysfs logic as part of the 
OCIContainerRuntime to ensure that we remind developer to implement YARN sysfs 
API for their runtime to expose cluster runtime configuration inside container.
 # We don't have method by method comprehensive test for 
DockerContainerRuntime. It is impossible to detect if the code is using the 
latest version of DockerContainerRuntime for the refactoring, or if the 
ordering of the statement has any side effect to the running code. What manual 
test have been done on your side for DockerContainerRuntime? I need some time 
to repeat the tests and add my own tests to support the coverages.
 # Without unit test case, more thorough test needs to be conducted which will 
delay the commit and get into repeated iterations to test the refactoring 
matches latest code.  This is something that I like to avoid as well.

> Restructure DockerLinuxContainerRuntime to extend a new OCIContainerRuntime
> ---------------------------------------------------------------------------
>
>                 Key: YARN-9560
>                 URL: https://issues.apache.org/jira/browse/YARN-9560
>             Project: Hadoop YARN
>          Issue Type: Sub-task
>            Reporter: Eric Badger
>            Assignee: Eric Badger
>            Priority: Major
>         Attachments: YARN-9560.001.patch, YARN-9560.002.patch, 
> YARN-9560.003.patch, YARN-9560.004.patch, YARN-9560.005.patch
>
>
> Since the new OCI/squashFS/runc runtime will be using a lot of the same code 
> as DockerLinuxContainerRuntime, it would be good to move a bunch of the 
> DockerLinuxContainerRuntime code up a level to an abstract class that both of 
> the runtimes can extend. 
> The new structure will look like:
> {noformat}
> OCIContainerRuntime (abstract class)
>   - DockerLinuxContainerRuntime
>   - FSImageContainerRuntime (name negotiable)
> {noformat}
> This JIRA should only change the structure of the code, not the actual 
> semantics



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

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