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: [email protected]
For additional commands, e-mail: [email protected]