Repository: cloudstack
Updated Branches:
  refs/heads/4.4-forward 4e10b8029 -> 3448ab7f1


CLOUDSTACK-6476: Basic Zone with Multiple Pods Setup: DHCP server doesnt get 
deployed in the pod where the VM gets deployed

Changes:
PodId in which the router should get started was not being saved to the DB due 
to the VO's setter method not following the setXXX format. So when planner 
loaded the router from DB, it always got podId as null and that would allow 
planner to deploy the router in any pod. If the router happens to start in a 
different pod than the user VM, the Vm fails to start since the Dhcp service 
check fails.

Fixed the VO's setPodId method, that was causing the DB save operation fail.


Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/3448ab7f
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/3448ab7f
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/3448ab7f

Branch: refs/heads/4.4-forward
Commit: 3448ab7f1c5c15949855788b029028ddac01327b
Parents: 4e10b80
Author: Prachi Damle <pra...@cloud.com>
Authored: Fri May 16 16:48:53 2014 -0700
Committer: Prachi Damle <pra...@cloud.com>
Committed: Fri May 16 16:48:53 2014 -0700

----------------------------------------------------------------------
 .../src/com/cloud/vm/VirtualMachineManagerImpl.java            | 6 +++---
 engine/schema/src/com/cloud/vm/VMInstanceVO.java               | 2 +-
 2 files changed, 4 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/3448ab7f/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 d8abdfb..9b63043 100755
--- a/engine/orchestration/src/com/cloud/vm/VirtualMachineManagerImpl.java
+++ b/engine/orchestration/src/com/cloud/vm/VirtualMachineManagerImpl.java
@@ -389,7 +389,7 @@ public class VirtualMachineManagerImpl extends ManagerBase 
implements VirtualMac
 
         vm.setDataCenterId(plan.getDataCenterId());
         if (plan.getPodId() != null) {
-            vm.setPodId(plan.getPodId());
+            vm.setPodIdToDeployIn(plan.getPodId());
         }
         assert (plan.getClusterId() == null && plan.getPoolId() == null) : "We 
currently don't support cluster and pool preset yet";
         final VMInstanceVO vmFinal = _vmDao.persist(vm);
@@ -951,7 +951,7 @@ public class VirtualMachineManagerImpl extends ManagerBase 
implements VirtualMac
                 }
 
                 long destHostId = dest.getHost().getId();
-                vm.setPodId(dest.getPod().getId());
+                vm.setPodIdToDeployIn(dest.getPod().getId());
                 Long cluster_id = dest.getCluster().getId();
                 ClusterDetailsVO cluster_detail_cpu = 
_clusterDetailsDao.findDetail(cluster_id, "cpuOvercommitRatio");
                 ClusterDetailsVO cluster_detail_ram = 
_clusterDetailsDao.findDetail(cluster_id, "memoryOvercommitRatio");
@@ -1731,7 +1731,7 @@ public class VirtualMachineManagerImpl extends 
ManagerBase implements VirtualMac
 
                 //when start the vm next time, don;'t look at last_host_id, 
only choose the host based on volume/storage pool
                 vm.setLastHostId(null);
-                vm.setPodId(destPool.getPodId());
+                vm.setPodIdToDeployIn(destPool.getPodId());
             } else {
                 s_logger.debug("Storage migration failed");
             }

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/3448ab7f/engine/schema/src/com/cloud/vm/VMInstanceVO.java
----------------------------------------------------------------------
diff --git a/engine/schema/src/com/cloud/vm/VMInstanceVO.java 
b/engine/schema/src/com/cloud/vm/VMInstanceVO.java
index 3d4337f..849e042 100644
--- a/engine/schema/src/com/cloud/vm/VMInstanceVO.java
+++ b/engine/schema/src/com/cloud/vm/VMInstanceVO.java
@@ -417,7 +417,7 @@ public class VMInstanceVO implements VirtualMachine, 
FiniteStateObject<State, Vi
         return podIdToDeployIn;
     }
 
-    public void setPodId(Long podId) {
+    public void setPodIdToDeployIn(Long podId) {
         this.podIdToDeployIn = podId;
     }
 

Reply via email to