AutoCreatedQueueManagementPolicypublic class GuaranteedOrZeroCapacityOverTimePolicy extends java.lang.Object implements AutoCreatedQueueManagementPolicy
Assigns capacity if available to leaf queues based on application submission order i.e leaf queues are assigned capacity in FCFS order based on application submission time. Updates leaf queue capacities to 0 when there are no pending or running apps under that queue.
| Constructor | Description |
|---|---|
GuaranteedOrZeroCapacityOverTimePolicy() |
| Modifier and Type | Method | Description |
|---|---|---|
void |
commitQueueManagementChanges(java.util.List<QueueManagementChange> queueManagementChanges) |
Commit queue management changes - which involves updating required state
on parent/underlying leaf queues.
|
java.util.List<QueueManagementChange> |
computeQueueManagementChanges() |
Computes / adjusts child queue capacities for auto created leaf queues.
|
float |
getAbsoluteActivatedChildQueueCapacity(java.lang.String nodeLabel) |
|
AutoCreatedLeafQueueConfig |
getInitialLeafQueueConfiguration(AbstractAutoCreatedLeafQueue leafQueue) |
Get initial template for the specified leaf queue.
|
boolean |
hasPendingApps(AutoCreatedLeafQueue leafQueue) |
|
void |
init(AbstractParentQueue parentQueue) |
Initialize policy.
|
boolean |
isActive(AutoCreatedLeafQueue leafQueue,
java.lang.String nodeLabel) |
|
void |
reinitialize(AbstractParentQueue parentQueue) |
Reinitialize policy state ( if required ).
|
void |
updateTemplateAbsoluteCapacities(QueueCapacities queueCapacities) |
public GuaranteedOrZeroCapacityOverTimePolicy()
public void init(AbstractParentQueue parentQueue) throws java.io.IOException
AutoCreatedQueueManagementPolicyinit in interface AutoCreatedQueueManagementPolicyparentQueue - parent queuejava.io.IOException - an I/O exception has occurred.public java.util.List<QueueManagementChange> computeQueueManagementChanges() throws SchedulerDynamicEditException
computeQueueManagementChanges in interface AutoCreatedQueueManagementPolicySchedulerDynamicEditException - when compute queueManagement changes fails.public void updateTemplateAbsoluteCapacities(QueueCapacities queueCapacities)
@VisibleForTesting public boolean isActive(AutoCreatedLeafQueue leafQueue, java.lang.String nodeLabel) throws SchedulerDynamicEditException
SchedulerDynamicEditExceptionpublic void commitQueueManagementChanges(java.util.List<QueueManagementChange> queueManagementChanges) throws SchedulerDynamicEditException
commitQueueManagementChanges in interface AutoCreatedQueueManagementPolicyqueueManagementChanges - Queue Management changes to commitSchedulerDynamicEditException - when validation failspublic boolean hasPendingApps(AutoCreatedLeafQueue leafQueue)
public void reinitialize(AbstractParentQueue parentQueue) throws java.io.IOException
AutoCreatedQueueManagementPolicyreinitialize in interface AutoCreatedQueueManagementPolicyparentQueue - parent queuejava.io.IOException - an I/O exception has occurred.public AutoCreatedLeafQueueConfig getInitialLeafQueueConfiguration(AbstractAutoCreatedLeafQueue leafQueue) throws SchedulerDynamicEditException
AutoCreatedQueueManagementPolicygetInitialLeafQueueConfiguration in interface AutoCreatedQueueManagementPolicyleafQueue - the leaf queueSchedulerDynamicEditException - when get initialLeafQueue Configuration fails.@VisibleForTesting public float getAbsoluteActivatedChildQueueCapacity(java.lang.String nodeLabel)
Copyright © 2008–2025 Apache Software Foundation. All rights reserved.