From 79ddba246d76960f3a769d80835a02728b6de1bc Mon Sep 17 00:00:00 2001 From: Alex Huang Date: Tue, 2 Aug 2011 03:48:57 -0700 Subject: [PATCH] Revert "looks like lock tables don't return the tables locked" This reverts commit 76781c10f8534acdd6f81c46952f88ade941e269. --- .../network/security/SecurityGroupManagerImpl.java | 5 +++++ .../src/com/cloud/vm/VirtualMachineManagerImpl.java | 12 +++++------- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/server/src/com/cloud/network/security/SecurityGroupManagerImpl.java b/server/src/com/cloud/network/security/SecurityGroupManagerImpl.java index 34607296bf0..7e36983fd6b 100755 --- a/server/src/com/cloud/network/security/SecurityGroupManagerImpl.java +++ b/server/src/com/cloud/network/security/SecurityGroupManagerImpl.java @@ -385,6 +385,10 @@ public class SecurityGroupManagerImpl implements SecurityGroupManager, SecurityG try { PreparedStatement pstmt = txn.prepareAutoCloseStatement("LOCK TABLES op_vm_ruleset_log WRITE, op_nwgrp_work WRITE"); int tablesLocked = pstmt.executeUpdate(); + if (tablesLocked != 2) { + s_logger.warn("Unable to get locks on both tables: " + tablesLocked); + return; + } for (Long vmId : affectedVms) { if (s_logger.isTraceEnabled()) { s_logger.trace("Security Group Mgr: scheduling ruleset updates for " + vmId); @@ -423,6 +427,7 @@ public class SecurityGroupManagerImpl implements SecurityGroupManager, SecurityG try { PreparedStatement pstmt = txn.prepareAutoCloseStatement("UNLOCK TABLES"); int tablesUnlocked = pstmt.executeUpdate(); + assert (tablesUnlocked == 2) : "Less than two tables unlocked: " + tablesUnlocked; } catch (SQLException e) { s_logger.warn("Unable to unlock tables"); } diff --git a/server/src/com/cloud/vm/VirtualMachineManagerImpl.java b/server/src/com/cloud/vm/VirtualMachineManagerImpl.java index fe5d19d0358..89bcf0c88ed 100755 --- a/server/src/com/cloud/vm/VirtualMachineManagerImpl.java +++ b/server/src/com/cloud/vm/VirtualMachineManagerImpl.java @@ -1728,13 +1728,11 @@ public class VirtualMachineManagerImpl implements VirtualMachineManager, Listene @Override public boolean processAnswers(long agentId, long seq, Answer[] answers) { for (final Answer answer : answers) { - if (answer.getClass() == StopAnswer.class) { - if (!answer.getResult()) { - s_logger.warn("Cleanup failed due to " + answer.getDetails()); - } else { - if (s_logger.isDebugEnabled()) { - s_logger.debug("Cleanup succeeded. Details " + answer.getDetails()); - } + if (!answer.getResult()) { + s_logger.warn("Cleanup failed due to " + answer.getDetails()); + } else { + if (s_logger.isDebugEnabled()) { + s_logger.debug("Cleanup succeeded. Details " + answer.getDetails()); } } }