diff --git a/server/src/com/cloud/agent/manager/AgentManagerImpl.java b/server/src/com/cloud/agent/manager/AgentManagerImpl.java index cdc3fbe2c3a..4e15edfcae9 100755 --- a/server/src/com/cloud/agent/manager/AgentManagerImpl.java +++ b/server/src/com/cloud/agent/manager/AgentManagerImpl.java @@ -3031,7 +3031,7 @@ public class AgentManagerImpl implements AgentManager, HandlerFactory, if (capacityVOCpus != null && !capacityVOCpus.isEmpty()) { CapacityVO CapacityVOCpu = capacityVOCpus.get(0); long newTotalCpu = (long) (server.getCpus().longValue() - * server.getSpeed().longValue() * _cpuOverProvisioningFactor); + * server.getSpeed().longValue()); if ((CapacityVOCpu.getTotalCapacity() <= newTotalCpu) || ((CapacityVOCpu.getUsedCapacity() + CapacityVOCpu .getReservedCapacity()) <= newTotalCpu)) { @@ -3056,7 +3056,7 @@ public class AgentManagerImpl implements AgentManager, HandlerFactory, server.getClusterId(), 0L, (long) (server.getCpus().longValue() - * server.getSpeed().longValue() * _cpuOverProvisioningFactor), + * server.getSpeed().longValue()), CapacityVO.CAPACITY_TYPE_CPU); _capacityDao.persist(capacity); } diff --git a/server/src/com/cloud/server/ManagementServerImpl.java b/server/src/com/cloud/server/ManagementServerImpl.java index cbf57f388b5..a5298b44866 100755 --- a/server/src/com/cloud/server/ManagementServerImpl.java +++ b/server/src/com/cloud/server/ManagementServerImpl.java @@ -1302,7 +1302,13 @@ public class ManagementServerImpl implements ManagementServer { s_logger.debug("Searching for hosts in cluster: " +cluster+ " having required CPU: " +requiredCpu+ " and RAM:"+ requiredRam); } - List hostsWithCapacity = _capacityDao.listHostsWithEnoughCapacity(requiredCpu, requiredRam, cluster, hostType.name()); + String opFactor = _configDao.getValue(Config.CPUOverprovisioningFactor.key()); + float cpuOverprovisioningFactor = NumbersUtil.parseFloat(opFactor, 1); + if (s_logger.isDebugEnabled()) { + s_logger.debug("CPUOverprovisioningFactor considered: " + cpuOverprovisioningFactor); + } + List hostsWithCapacity = _capacityDao.listHostsWithEnoughCapacity(requiredCpu, requiredRam, cluster, hostType.name(), cpuOverprovisioningFactor); + if(s_logger.isDebugEnabled()){ s_logger.debug("Hosts having capacity: "+hostsWithCapacity );