From 79c276ba6bc9cbd3929e035c036d32b062cc267b Mon Sep 17 00:00:00 2001 From: Sheng Yang Date: Thu, 31 May 2012 18:54:08 -0700 Subject: [PATCH] CS-15116: When GetDomRVersion failed, let VR creation fail Because there are more commands after GetDomRVersion command. Though GetDomRVersion command itself is not that critical, the commands after it may including DHCP and firewall related commands. The failure of GetDomRVersion command would result in the following commands fail to be executed. So it should fail, and fail loudly. --- .../router/VirtualNetworkApplianceManagerImpl.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java b/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java index c85b3c7ca31..d044d4f3525 100755 --- a/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java +++ b/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java @@ -1936,19 +1936,21 @@ public class VirtualNetworkApplianceManagerImpl implements VirtualNetworkApplian result = false; } if (result == false) { - return false; + return result; } answer = cmds.getAnswer("getDomRVersion"); if (answer != null && answer instanceof GetDomRVersionAnswer) { GetDomRVersionAnswer versionAnswer = (GetDomRVersionAnswer)answer; if (answer == null || !answer.getResult()) { - /* Try to push on because it's not a critical error */ - s_logger.warn("Unable to get the template/scripts version of router " + router.getInstanceName() + " due to: " + versionAnswer.getDetails() + ", but we would continue"); + s_logger.warn("Unable to get the template/scripts version of router " + router.getInstanceName() + " due to: " + versionAnswer.getDetails()); + result = false; } else { router.setTemplateVersion(versionAnswer.getTemplateVersion()); router.setScriptsVersion(versionAnswer.getScriptsVersion()); router = _routerDao.persist(router); } + } else { + result = false; } return result;