internal CapacitySchedulerQueueInfo(CSQueue q) { queuePath = q.GetQueuePath(); capacity = q.GetCapacity() * 100; usedCapacity = q.GetUsedCapacity() * 100; maxCapacity = q.GetMaximumCapacity(); if (maxCapacity < Epsilon || maxCapacity > 1f) { maxCapacity = 1f; } maxCapacity *= 100; absoluteCapacity = Cap(q.GetAbsoluteCapacity(), 0f, 1f) * 100; absoluteMaxCapacity = Cap(q.GetAbsoluteMaximumCapacity(), 0f, 1f) * 100; absoluteUsedCapacity = Cap(q.GetAbsoluteUsedCapacity(), 0f, 1f) * 100; numApplications = q.GetNumApplications(); queueName = q.GetQueueName(); state = q.GetState(); resourcesUsed = new ResourceInfo(q.GetUsedResources()); if (q is PlanQueue && !((PlanQueue)q).ShowReservationsAsQueues()) { hideReservationQueues = true; } // add labels ICollection <string> labelSet = q.GetAccessibleNodeLabels(); if (labelSet != null) { Sharpen.Collections.AddAll(nodeLabels, labelSet); nodeLabels.Sort(); } }
public CapacitySchedulerInfo(CSQueue parent) { // JAXB needs this this.queueName = parent.GetQueueName(); this.usedCapacity = parent.GetUsedCapacity() * 100; this.capacity = parent.GetCapacity() * 100; float max = parent.GetMaximumCapacity(); if (max < Epsilon || max > 1f) { max = 1f; } this.maxCapacity = max * 100; queues = GetQueues(parent); }
/// <exception cref="Org.Apache.Hadoop.Yarn.Server.Resourcemanager.Scheduler.SchedulerDynamicEditException /// "/> internal virtual void RemoveChildQueue(CSQueue remQueue) { lock (this) { if (remQueue.GetCapacity() > 0) { throw new SchedulerDynamicEditException("Queue " + remQueue + " being removed has non zero capacity." ); } IEnumerator <CSQueue> qiter = childQueues.GetEnumerator(); while (qiter.HasNext()) { CSQueue cs = qiter.Next(); if (cs.Equals(remQueue)) { qiter.Remove(); if (Log.IsDebugEnabled()) { Log.Debug("Removed child queue: {}", cs.GetQueueName()); } } } } }