You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by pr...@apache.org on 2013/12/06 22:20:19 UTC
[3/4] git commit: updated refs/heads/4.3 to d3520a5
CLOUDSTACK-5401: VM migration during host maintenance fails if pool.storage.capacity.disablethreshold is lowered
Changes:
- During Vm migration while finding a new host within the cluster, we need to set the storagepool Id to the deployment plan too.
- This will indicate the planner that the volumes are ready and no need to find new pool
- This in turn will prevent the threshold check done during the pool allocation. This step is not needed since there is no need to allocate pools newly.
- Thus the migration wont fail because th threshold check fails.
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/13d2caa6
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/13d2caa6
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/13d2caa6
Branch: refs/heads/4.3
Commit: 13d2caa6b5645e35e63a43bcd8062fb3aa57f46d
Parents: 3a6adb3
Author: Prachi Damle <pr...@cloud.com>
Authored: Fri Dec 6 11:12:38 2013 -0800
Committer: Prachi Damle <pr...@cloud.com>
Committed: Fri Dec 6 13:18:40 2013 -0800
----------------------------------------------------------------------
.../src/com/cloud/vm/VirtualMachineManagerImpl.java | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/13d2caa6/engine/orchestration/src/com/cloud/vm/VirtualMachineManagerImpl.java
----------------------------------------------------------------------
diff --git a/engine/orchestration/src/com/cloud/vm/VirtualMachineManagerImpl.java b/engine/orchestration/src/com/cloud/vm/VirtualMachineManagerImpl.java
index f2a2102..164457a 100755
--- a/engine/orchestration/src/com/cloud/vm/VirtualMachineManagerImpl.java
+++ b/engine/orchestration/src/com/cloud/vm/VirtualMachineManagerImpl.java
@@ -2047,8 +2047,16 @@ public class VirtualMachineManagerImpl extends ManagerBase implements VirtualMac
}
Host host = _hostDao.findById(hostId);
+ Long poolId = null;
+ List<VolumeVO> vols = _volsDao.findReadyRootVolumesByInstance(vm.getId());
+ for (VolumeVO rootVolumeOfVm : vols) {
+ StoragePoolVO rootDiskPool = _storagePoolDao.findById(rootVolumeOfVm.getPoolId());
+ if (rootDiskPool != null) {
+ poolId = rootDiskPool.getId();
+ }
+ }
- DataCenterDeployment plan = new DataCenterDeployment(host.getDataCenterId(), host.getPodId(), host.getClusterId(), null, null, null);
+ DataCenterDeployment plan = new DataCenterDeployment(host.getDataCenterId(), host.getPodId(), host.getClusterId(), null, poolId, null);
ExcludeList excludes = new ExcludeList();
excludes.addHost(hostId);