public Resource getReserved() { return getReserved(NL); }
public Resource getReserved() { return getReserved(NL); }
public Resource getReserved() { return getReserved(NL); }
/** * Get total current reservations. * Used only by unit tests * @return total current reservations */ @Stable @Private public Resource getCurrentReservation() { return attemptResourceUsage.getReserved(); }
private void unreserveInternal( SchedulerRequestKey schedulerKey, FSSchedulerNode node) { try { writeLock.lock(); Map<NodeId, RMContainer> reservedContainers = this.reservedContainers.get( schedulerKey); RMContainer reservedContainer = reservedContainers.remove( node.getNodeID()); if (reservedContainers.isEmpty()) { this.reservedContainers.remove(schedulerKey); } // Reset the re-reservation count resetReReservations(schedulerKey); Resource resource = reservedContainer.getContainer().getResource(); this.attemptResourceUsage.decReserved(resource); LOG.info( "Application " + getApplicationId() + " unreserved " + " on node " + node + ", currently has " + reservedContainers.size() + " at priority " + schedulerKey.getPriority() + "; currentReservation " + this.attemptResourceUsage .getReserved()); } finally { writeLock.unlock(); } }
private boolean internalUnreserve(FiCaSchedulerNode node, SchedulerRequestKey schedulerKey) { Map<NodeId, RMContainer> reservedContainers = this.reservedContainers.get(schedulerKey); if (reservedContainers != null) { RMContainer reservedContainer = reservedContainers.remove(node.getNodeID()); // unreserve is now triggered in new scenarios (preemption) // as a consequence reservedcontainer might be null, adding NP-checks if (reservedContainer != null && reservedContainer.getContainer() != null && reservedContainer.getContainer().getResource() != null) { if (reservedContainers.isEmpty()) { this.reservedContainers.remove(schedulerKey); } // Reset the re-reservation count resetReReservations(schedulerKey); Resource resource = reservedContainer.getReservedResource(); this.attemptResourceUsage.decReserved(node.getPartition(), resource); LOG.info("Application " + getApplicationId() + " unreserved " + " on node " + node + ", currently has " + reservedContainers.size() + " at priority " + schedulerKey.getPriority() + "; currentReservation " + this.attemptResourceUsage.getReserved() + " on node-label=" + node.getPartition()); return true; } } return false; }
public void checkReservedResource(CSQueue queue, String partition, int reserved) { ResourceUsage ru = queue.getQueueResourceUsage(); Assert.assertEquals(reserved, ru.getReserved(partition).getMemorySize()); }
attemptResourceUsage.getAllUsed()); Resource reservedResourceClone = Resources.clone( attemptResourceUsage.getReserved()); Resource cluster = rmContext.getScheduler().getClusterResource(); ResourceCalculator calc =
if (deductReservedFromPending) { pending = Resources.subtract(pending, app.getAppAttemptResourceUsage().getReserved(partition));
.get(partition); Resource reserved = app.getAppAttemptResourceUsage() .getReserved(partition); Resources.clone(userResourceUsage.getUsed(partition)), Resources.clone(amUsed), Resources.clone(userResourceUsage.getReserved(partition)), Resources.none());
public ResourcesInfo(ResourceUsage resourceUsage, boolean considerAMUsage) { if (resourceUsage == null) { return; } for (String partitionName : resourceUsage.getNodePartitionsSet()) { resourceUsagesByPartition.add(new PartitionResourcesInfo(partitionName, new ResourceInfo(resourceUsage.getUsed(partitionName)), new ResourceInfo(resourceUsage.getReserved(partitionName)), new ResourceInfo(resourceUsage.getPending(partitionName)), considerAMUsage ? new ResourceInfo(resourceUsage .getAMUsed(partitionName)) : null, considerAMUsage ? new ResourceInfo(resourceUsage .getAMLimit(partitionName)) : null, considerAMUsage ? new ResourceInfo(resourceUsage .getUserAMLimit(partitionName)) : null)); } }
queueGuaranteedResource); Resource resResource = queueResourceUsage.getReserved(nodePartition); reservedCapacity = Resources.divide(rc, totalPartitionResource, resResource,
.getUsed("x").getMemorySize()); Assert.assertEquals(4 * GB, cs.getRootQueue().getQueueResourceUsage() .getReserved("x").getMemorySize()); Assert.assertEquals(4 * GB, leafQueue.getQueueResourceUsage().getReserved("x").getMemorySize()); .getUsed("x").getMemorySize()); Assert.assertEquals(0, cs.getRootQueue().getQueueResourceUsage() .getReserved("x").getMemorySize()); Assert.assertEquals(0, leafQueue.getQueueResourceUsage().getReserved("x") .getMemorySize()); rm1.close();
.getUsed().getMemorySize()); Assert.assertEquals(4 * GB, cs.getRootQueue().getQueueResourceUsage() .getReserved().getMemorySize()); Assert.assertEquals(4 * GB, leafQueue.getQueueResourceUsage().getReserved() .getMemorySize()); .getUsed().getMemorySize()); Assert.assertEquals(0 * GB, cs.getRootQueue().getQueueResourceUsage() .getReserved().getMemorySize()); Assert.assertEquals(0 * GB, leafQueue.getQueueResourceUsage().getReserved() .getMemorySize());
.getUsed().getMemorySize()); Assert.assertEquals(4 * GB, cs.getRootQueue().getQueueResourceUsage() .getReserved().getMemorySize()); Assert.assertEquals(4 * GB, leafQueue.getQueueResourceUsage().getReserved() .getMemorySize()); .getUsed().getMemorySize()); Assert.assertEquals(0, cs.getRootQueue().getQueueResourceUsage() .getReserved().getMemorySize()); Assert.assertEquals(0, leafQueue.getQueueResourceUsage().getReserved() .getMemorySize());
app.getAppAttemptResourceUsage().getUsed().getMemorySize()); Assert.assertEquals(6 * GB, app.getAppAttemptResourceUsage().getReserved().getMemorySize()); .getUser("user").getUsed().getMemorySize()); Assert.assertEquals(0 * GB, app.getAppAttemptResourceUsage().getReserved().getMemorySize()); Assert.assertEquals(1 * GB, app.getAppAttemptResourceUsage().getUsed().getMemorySize());
app.getAppAttemptResourceUsage().getUsed().getMemorySize()); Assert.assertEquals(6 * GB, app.getAppAttemptResourceUsage().getReserved().getMemorySize()); .getUser("user").getUsed().getMemorySize()); Assert.assertEquals(0 * GB, app.getAppAttemptResourceUsage().getReserved().getMemorySize()); Assert.assertEquals(1 * GB, app.getAppAttemptResourceUsage().getUsed().getMemorySize());
schedulerApp1.getAppAttemptResourceUsage().getUsed().getMemorySize()); Assert.assertEquals(3 * GB, schedulerApp1.getAppAttemptResourceUsage().getReserved() .getMemorySize()); Assert.assertEquals(3 * GB, schedulerApp2.getAppAttemptResourceUsage().getUsed().getMemorySize()); Assert.assertEquals(0 * GB, schedulerApp2.getAppAttemptResourceUsage().getReserved() .getMemorySize()); Assert.assertEquals(5 * 4 * GB,
.getUser("user").getUsed().getMemorySize()); Assert.assertEquals(0 * GB, app.getAppAttemptResourceUsage().getReserved().getMemorySize()); Assert.assertEquals(10 * GB, app.getAppAttemptResourceUsage().getUsed().getMemorySize());
app.getAppAttemptResourceUsage().getUsed().getMemorySize()); Assert.assertEquals(0 * GB, app.getAppAttemptResourceUsage().getReserved().getMemorySize()); rm1.close();