Container failures
Whenever a container finishes, the ApplicationMaster is informed of this event by the ResourceManager. So the ApplicationMaster interprets that the container status received through the ResourceManager is the success or failure from container exit status. The ApplicationMaster handles the failures of the job containers.
It is the responsibility of the application frameworks to manage the container's failures, and the responsibility of the YARN framework is to provide information to the application framework. As a part of allocating the API's response, the ResourceManager collects information on the finished containers from the ApplicationMaster, as the containers return all this information to the corresponding ApplicationMaster. It is the responsibility of the ApplicationMaster to validate the container's status, exit code, and diagnostic information and appropriate action on it, for example when the MapReduce ApplicationMaster retries the map and reduce tasks by requesting...