1 /**
2 * Licensed to the Apache Software Foundation (ASF) under one
3 * or more contributor license agreements.  See the NOTICE file
4 * distributed with this work for additional information
5 * regarding copyright ownership.  The ASF licenses this file
6 * to you under the Apache License, Version 2.0 (the
7 * "License"); you may not use this file except in compliance
8 * with the License.  You may obtain a copy of the License at
9 *
10 *     http://www.apache.org/licenses/LICENSE-2.0
11 *
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
17 */
18 
19 package org.apache.hadoop.yarn.api.records;
20 
21 import org.apache.hadoop.classification.InterfaceAudience.Public;
22 import org.apache.hadoop.classification.InterfaceStability.Unstable;
23 
24 /**
25  * Container exit statuses indicating special exit circumstances.
26  */
27 @Public
28 @Unstable
29 public class ContainerExitStatus {
30   public static final int SUCCESS = 0;
31   public static final int INVALID = -1000;
32 
33   /**
34    * Containers killed by the framework, either due to being released by
35    * the application or being 'lost' due to node failures etc.
36    */
37   public static final int ABORTED = -100;
38 
39   /**
40    * When threshold number of the nodemanager-local-directories or
41    * threshold number of the nodemanager-log-directories become bad.
42    */
43   public static final int DISKS_FAILED = -101;
44 
45   /**
46    * Containers preempted by the framework.
47    */
48   public static final int PREEMPTED = -102;
49 
50   /**
51    * Container terminated because of exceeding allocated virtual memory.
52    */
53   public static final int KILLED_EXCEEDED_VMEM = -103;
54 
55   /**
56    * Container terminated because of exceeding allocated physical memory.
57    */
58   public static final int KILLED_EXCEEDED_PMEM = -104;
59 
60   /**
61    * Container was terminated by stop request by the app master.
62    */
63   public static final int KILLED_BY_APPMASTER = -105;
64 
65   /**
66    * Container was terminated by the resource manager.
67    */
68   public static final int KILLED_BY_RESOURCEMANAGER = -106;
69 
70   /**
71    * Container was terminated after the application finished.
72    */
73   public static final int KILLED_AFTER_APP_COMPLETION = -107;
74 
75 }
76