Repository: cloudstack
Updated Branches:
  refs/heads/master f9e11540c -> fd96ad02d


Fixed few coverity reported issues around concurrency, null checks


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

Branch: refs/heads/master
Commit: fd96ad02d7a29a94927c74e6092a816e7d235cf9
Parents: f9e1154
Author: Santhosh Edukulla <santhosh.eduku...@gmail.com>
Authored: Mon Aug 11 16:55:23 2014 +0530
Committer: Santhosh Edukulla <santhosh.eduku...@gmail.com>
Committed: Mon Aug 11 16:55:23 2014 +0530

----------------------------------------------------------------------
 .../mom/rabbitmq/RabbitMQEventBus.java          |  5 ++--
 .../hyperv/manager/HypervManagerImpl.java       | 27 ++++++++++----------
 .../cloud/resource/DummyHostServerResource.java |  2 +-
 .../com/cloud/utils/concurrency/TestClock.java  | 24 ++++++++++++-----
 4 files changed, 35 insertions(+), 23 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/fd96ad02/plugins/event-bus/rabbitmq/src/org/apache/cloudstack/mom/rabbitmq/RabbitMQEventBus.java
----------------------------------------------------------------------
diff --git 
a/plugins/event-bus/rabbitmq/src/org/apache/cloudstack/mom/rabbitmq/RabbitMQEventBus.java
 
b/plugins/event-bus/rabbitmq/src/org/apache/cloudstack/mom/rabbitmq/RabbitMQEventBus.java
index a1f4c2b..2d389f2 100644
--- 
a/plugins/event-bus/rabbitmq/src/org/apache/cloudstack/mom/rabbitmq/RabbitMQEventBus.java
+++ 
b/plugins/event-bus/rabbitmq/src/org/apache/cloudstack/mom/rabbitmq/RabbitMQEventBus.java
@@ -60,7 +60,7 @@ public class RabbitMQEventBus extends ManagerBase implements 
EventBus {
     private static String username;
     private static String password;
 
-    public static void setVirtualHost(String virtualHost) {
+    public synchronized static void setVirtualHost(String virtualHost) {
         RabbitMQEventBus.virtualHost = virtualHost;
     }
 
@@ -481,8 +481,7 @@ public class RabbitMQEventBus extends ManagerBase 
implements EventBus {
     }
 
     @Override
-    public boolean stop() {
-
+    public synchronized boolean stop() {
         if (s_connection.isOpen()) {
             for (String subscriberId : s_subscribers.keySet()) {
                 Ternary<String, Channel, EventSubscriber> subscriberDetails = 
s_subscribers.get(subscriberId);

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/fd96ad02/plugins/hypervisors/hyperv/src/com/cloud/hypervisor/hyperv/manager/HypervManagerImpl.java
----------------------------------------------------------------------
diff --git 
a/plugins/hypervisors/hyperv/src/com/cloud/hypervisor/hyperv/manager/HypervManagerImpl.java
 
b/plugins/hypervisors/hyperv/src/com/cloud/hypervisor/hyperv/manager/HypervManagerImpl.java
index 71a619a..c512445 100644
--- 
a/plugins/hypervisors/hyperv/src/com/cloud/hypervisor/hyperv/manager/HypervManagerImpl.java
+++ 
b/plugins/hypervisors/hyperv/src/com/cloud/hypervisor/hyperv/manager/HypervManagerImpl.java
@@ -359,20 +359,21 @@ public class HypervManagerImpl implements HypervManager {
 
     private void shutdownCleanup() {
         s_logger.info("Cleanup mounted mount points used in current session");
+        synchronized (_storageMounts) {
+             for (String mountPoint : _storageMounts.values()) {
+                s_logger.info("umount NFS mount: " + mountPoint);
 
-        for (String mountPoint : _storageMounts.values()) {
-            s_logger.info("umount NFS mount: " + mountPoint);
-
-            String result = null;
-            Script command = new Script(true, "umount", _timeout, s_logger);
-            command.add(mountPoint);
-            result = command.execute();
-            if (result != null) {
-                s_logger.warn("Unable to umount " + mountPoint + " due to " + 
result);
-            }
-            File file = new File(mountPoint);
-            if (file.exists()) {
-                file.delete();
+                String result = null;
+                Script command = new Script(true, "umount", _timeout, 
s_logger);
+                command.add(mountPoint);
+                result = command.execute();
+                if (result != null) {
+                    s_logger.warn("Unable to umount " + mountPoint + " due to 
" + result);
+                }
+                File file = new File(mountPoint);
+                if (file.exists()) {
+                    file.delete();
+                }
             }
         }
     }

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/fd96ad02/server/src/com/cloud/resource/DummyHostServerResource.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/resource/DummyHostServerResource.java 
b/server/src/com/cloud/resource/DummyHostServerResource.java
index 41f5d3d..d787b86 100644
--- a/server/src/com/cloud/resource/DummyHostServerResource.java
+++ b/server/src/com/cloud/resource/DummyHostServerResource.java
@@ -107,7 +107,7 @@ public class DummyHostServerResource extends 
ServerResourceBase {
         return true;
     }
 
-    public static int getNextSequenceId() {
+    public synchronized static int getNextSequenceId() {
         return s_nextSequence++;
     }
 

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/fd96ad02/utils/src/com/cloud/utils/concurrency/TestClock.java
----------------------------------------------------------------------
diff --git a/utils/src/com/cloud/utils/concurrency/TestClock.java 
b/utils/src/com/cloud/utils/concurrency/TestClock.java
index 8104a94..43fe56f 100644
--- a/utils/src/com/cloud/utils/concurrency/TestClock.java
+++ b/utils/src/com/cloud/utils/concurrency/TestClock.java
@@ -61,27 +61,39 @@ public class TestClock extends TimerTask {
     }
 
     public int getMinute() {
-        return _minute;
+        synchronized (this) {
+            return _minute;
+        }
     }
 
     public int getHour() {
-        return _hour;
+        synchronized (this) {
+            return _hour;
+        }
     }
 
     public int getDay() {
-        return _day;
+        synchronized (this) {
+            return _day;
+        }
     }
 
     public int getWeek() {
-        return _week;
+        synchronized (this) {
+            return _week;
+        }
     }
 
     public int getMonth() {
-        return _month;
+        synchronized (this) {
+            return _month;
+        }
     }
 
     public int getYear() {
-        return _year;
+        synchronized (this) {
+            return _year;
+        }
     }
 
     public int getMinutesPerHour() {

Reply via email to