Benjamin Teke created YARN-10379:
------------------------------------

             Summary: Refactor ContainerExecutor exit code Exception handling
                 Key: YARN-10379
                 URL: https://issues.apache.org/jira/browse/YARN-10379
             Project: Hadoop YARN
          Issue Type: Improvement
          Components: yarn
            Reporter: Benjamin Teke
            Assignee: Benjamin Teke


**Currently every time a shell command is executed and returns with a non-zero 
exitcode an exception gets thrown. But along the call tree this exception gets 
catched, after some info/warn logging and other processing steps rethrown, 
possibly packaged to another exception. For example:
 * from PrivilegedOperationExecutor.executePrivilegedOperation - 
ExitCodeException catch (as IOException), PrivilegedOperationException thrown
 * then in LinuxContainerExecutor.startLocalizer - PrivilegedOperationException 
catch, exitCode collection, logging, IOException rethrown
 * then in ResourceLocalizationService.run - generic Exception catch, but there 
is a TODO for separate ExitCodeException handling, however that information is 
only present here in an error message string

This flow could be simplified and unified in the different executors. For 
example use one specific exception till the last possible step, catch it only 
where it is necessary and keep the exitcode as it could be used later in the 
process. This change could help with maintainability and readability.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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