Fix for VR to boot up and get configured with boot args, Fixed issue in VolumeOrchestrator
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/b24935f2 Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/b24935f2 Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/b24935f2 Branch: refs/heads/hyperv Commit: b24935f2f9f2a86c81e11079884fa34db7a24a1f Parents: c15a295 Author: Rajesh Battala <rajesh.batt...@citrix.com> Authored: Sun Oct 13 09:10:14 2013 +0530 Committer: Rajesh Battala <rajesh.batt...@citrix.com> Committed: Sun Oct 13 09:10:14 2013 +0530 ---------------------------------------------------------------------- .../cloudstack/engine/orchestration/VolumeOrchestrator.java | 5 ++++- .../hyperv/DotNet/ServerResource/HypervResource/WmiCalls.cs | 4 +++- 2 files changed, 7 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cloudstack/blob/b24935f2/engine/orchestration/src/org/apache/cloudstack/engine/orchestration/VolumeOrchestrator.java ---------------------------------------------------------------------- diff --git a/engine/orchestration/src/org/apache/cloudstack/engine/orchestration/VolumeOrchestrator.java b/engine/orchestration/src/org/apache/cloudstack/engine/orchestration/VolumeOrchestrator.java index 7258e25..6453a1f 100644 --- a/engine/orchestration/src/org/apache/cloudstack/engine/orchestration/VolumeOrchestrator.java +++ b/engine/orchestration/src/org/apache/cloudstack/engine/orchestration/VolumeOrchestrator.java @@ -1167,8 +1167,11 @@ public class VolumeOrchestrator extends ManagerBase implements VolumeOrchestrati public void updateVolumeDiskChain(long volumeId, String path, String chainInfo) { VolumeVO vol = _volsDao.findById(volumeId); boolean needUpdate = false; + // Volume path is not getting updated in the DB, need to find reason and fix the issue. + if (vol.getPath() == null) + return; if(!vol.getPath().equalsIgnoreCase(path)) - needUpdate = true; + needUpdate = true; if(chainInfo != null && (vol.getChainInfo() == null || !chainInfo.equalsIgnoreCase(vol.getChainInfo()))) needUpdate = true; http://git-wip-us.apache.org/repos/asf/cloudstack/blob/b24935f2/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/WmiCalls.cs ---------------------------------------------------------------------- diff --git a/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/WmiCalls.cs b/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/WmiCalls.cs index 0fbb00b..1b9e073 100644 --- a/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/WmiCalls.cs +++ b/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/WmiCalls.cs @@ -352,8 +352,10 @@ namespace HypervResource // we need to reboot to get the hv kvp daemon get started vr gets configured. if (vmName.StartsWith("r-")) { - System.Threading.Thread.Sleep(8000); + System.Threading.Thread.Sleep(90000); SetState(newVm, RequiredState.Reboot); + // wait for the second boot and then return with suces + System.Threading.Thread.Sleep(50000); } logger.InfoFormat("Started VM {0}", vmName); return newVm;