@InterfaceAudience.Public @InterfaceStability.Evolving public abstract class PreemptionContract extends Object
ResourceManager.
 The ApplicationMaster (AM) can satisfy this request according
 to its own priorities to prevent containers from being forcibly killed by
 the platform.PreemptionMessage| Constructor and Description | 
|---|
| PreemptionContract() | 
| Modifier and Type | Method and Description | 
|---|---|
| abstract Set<PreemptionContainer> | getContainers()Assign the set of  PreemptionContainerspecifying which containers
 owned by theApplicationMasterthat may be reclaimed by theResourceManager. | 
| abstract List<PreemptionResourceRequest> | getResourceRequest()If the AM releases resources matching these requests, then the  PreemptionContainers enumerated ingetContainers()should not be
 evicted from the cluster. | 
| static PreemptionContract | newInstance(List<PreemptionResourceRequest> req,
           Set<PreemptionContainer> containers) | 
| abstract void | setContainers(Set<PreemptionContainer> containers) | 
| abstract void | setResourceRequest(List<PreemptionResourceRequest> req) | 
@InterfaceAudience.Private @InterfaceStability.Unstable public static PreemptionContract newInstance(List<PreemptionResourceRequest> req, Set<PreemptionContainer> containers)
@InterfaceAudience.Public @InterfaceStability.Evolving public abstract List<PreemptionResourceRequest> getResourceRequest()
PreemptionContainers enumerated in getContainers() should not be
 evicted from the cluster. Due to delays in propagating cluster state and
 sending these messages, there are conditions where satisfied contracts may
 not prevent the platform from killing containers.PreemptionResourceRequest to update the
 ApplicationMaster about resources requested back by the
 ResourceManager.AllocateRequest.setAskList(List)@InterfaceAudience.Private @InterfaceStability.Unstable public abstract void setResourceRequest(List<PreemptionResourceRequest> req)
@InterfaceAudience.Public @InterfaceStability.Evolving public abstract Set<PreemptionContainer> getContainers()
PreemptionContainer specifying which containers
 owned by the ApplicationMaster that may be reclaimed by the
 ResourceManager. If the AM prefers a different set of
 containers, then it may checkpoint or kill containers matching the
 description in getResourceRequest().@InterfaceAudience.Private @InterfaceStability.Unstable public abstract void setContainers(Set<PreemptionContainer> containers)
Copyright © 2008–2023 Apache Software Foundation. All rights reserved.