You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ya...@apache.org on 2014/01/14 22:33:05 UTC

git commit: updated refs/heads/4.3 to 65f6392

Updated Branches:
  refs/heads/4.3 69365836a -> 65f639219


Make sure that Cloudstack DB should be atleast once synced with contrail api server

Signed-off-by: Sheng Yang <sh...@citrix.com>


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

Branch: refs/heads/4.3
Commit: 65f639219cdb0892ff661fb2dd44bb54370549aa
Parents: 6936583
Author: sbalineni <sb...@contrailsystems.com>
Authored: Sun Jan 5 16:57:53 2014 +0000
Committer: Sheng Yang <sh...@citrix.com>
Committed: Tue Jan 14 13:32:46 2014 -0800

----------------------------------------------------------------------
 .../contrail/management/ContrailManager.java    |  2 +-
 .../management/ContrailManagerImpl.java         |  3 ++-
 .../contrail/management/ServerDBSync.java       |  2 +-
 .../contrail/management/ServerDBSyncImpl.java   |  3 ++-
 .../management/NetworkProviderTest.java         | 20 ++++++++++++--------
 5 files changed, 18 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/65f63921/plugins/network-elements/juniper-contrail/src/org/apache/cloudstack/network/contrail/management/ContrailManager.java
----------------------------------------------------------------------
diff --git a/plugins/network-elements/juniper-contrail/src/org/apache/cloudstack/network/contrail/management/ContrailManager.java b/plugins/network-elements/juniper-contrail/src/org/apache/cloudstack/network/contrail/management/ContrailManager.java
index 550abb7..6489da9 100644
--- a/plugins/network-elements/juniper-contrail/src/org/apache/cloudstack/network/contrail/management/ContrailManager.java
+++ b/plugins/network-elements/juniper-contrail/src/org/apache/cloudstack/network/contrail/management/ContrailManager.java
@@ -54,7 +54,7 @@ public interface ContrailManager {
     public NetworkOffering getRouterOffering();
     public NetworkOffering getPublicRouterOffering();
 
-    public void syncNetworkDB(short syncMode) throws IOException;
+    public void syncNetworkDB(short syncMode) throws Exception;
 
     public boolean isManagedPhysicalNetwork(Network network);
 

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/65f63921/plugins/network-elements/juniper-contrail/src/org/apache/cloudstack/network/contrail/management/ContrailManagerImpl.java
----------------------------------------------------------------------
diff --git a/plugins/network-elements/juniper-contrail/src/org/apache/cloudstack/network/contrail/management/ContrailManagerImpl.java b/plugins/network-elements/juniper-contrail/src/org/apache/cloudstack/network/contrail/management/ContrailManagerImpl.java
index eea5026..b7c0023 100644
--- a/plugins/network-elements/juniper-contrail/src/org/apache/cloudstack/network/contrail/management/ContrailManagerImpl.java
+++ b/plugins/network-elements/juniper-contrail/src/org/apache/cloudstack/network/contrail/management/ContrailManagerImpl.java
@@ -416,7 +416,7 @@ public class ContrailManagerImpl extends ManagerBase implements ContrailManager
 
     }
 
-    public void syncNetworkDB(short syncMode) throws IOException {
+    public void syncNetworkDB(short syncMode) throws Exception {
         if (_dbSync.syncAll(syncMode) == ServerDBSync.SYNC_STATE_OUT_OF_SYNC) {
              if (syncMode == DBSyncGeneric.SYNC_MODE_CHECK) {
                 s_logger.info("# Cloudstack DB & VNC are out of sync #");
@@ -440,6 +440,7 @@ public class ContrailManagerImpl extends ManagerBase implements ContrailManager
             } catch (Exception ex) {
                 s_logger.debug(ex);
                 s_logger.info("Unable to sync network db");
+                //resync will be done after _dbSyncInterval seconds since _syncMode is still set to SYNC_MODE_UPDATE
             }
         }
     }

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/65f63921/plugins/network-elements/juniper-contrail/src/org/apache/cloudstack/network/contrail/management/ServerDBSync.java
----------------------------------------------------------------------
diff --git a/plugins/network-elements/juniper-contrail/src/org/apache/cloudstack/network/contrail/management/ServerDBSync.java b/plugins/network-elements/juniper-contrail/src/org/apache/cloudstack/network/contrail/management/ServerDBSync.java
index fea9a95..6831977 100644
--- a/plugins/network-elements/juniper-contrail/src/org/apache/cloudstack/network/contrail/management/ServerDBSync.java
+++ b/plugins/network-elements/juniper-contrail/src/org/apache/cloudstack/network/contrail/management/ServerDBSync.java
@@ -32,7 +32,7 @@ public interface ServerDBSync {
      * API for syncing all classes of vnc objects with cloudstack
      * Sync cloudstack and vnc objects.
      */
-    public short syncAll(short syncMode);
+    public short syncAll(short syncMode) throws Exception;
     public void syncClass(Class<?> cls);
     public void createProject(ProjectVO project, StringBuffer syncLogMesg) throws IOException;
     public void createDomain(DomainVO domain, StringBuffer logMesg)throws IOException;

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/65f63921/plugins/network-elements/juniper-contrail/src/org/apache/cloudstack/network/contrail/management/ServerDBSyncImpl.java
----------------------------------------------------------------------
diff --git a/plugins/network-elements/juniper-contrail/src/org/apache/cloudstack/network/contrail/management/ServerDBSyncImpl.java b/plugins/network-elements/juniper-contrail/src/org/apache/cloudstack/network/contrail/management/ServerDBSyncImpl.java
index f8a8d97..22c726a 100644
--- a/plugins/network-elements/juniper-contrail/src/org/apache/cloudstack/network/contrail/management/ServerDBSyncImpl.java
+++ b/plugins/network-elements/juniper-contrail/src/org/apache/cloudstack/network/contrail/management/ServerDBSyncImpl.java
@@ -117,7 +117,7 @@ public class ServerDBSyncImpl implements ServerDBSync {
      * Order has to be maintained 
      */
     @Override
-    public short syncAll(short syncMode) {
+    public short syncAll(short syncMode) throws Exception {
         short syncState = SYNC_STATE_IN_SYNC;
         
         /* vnc classes need to be synchronized with cloudstack */
@@ -158,6 +158,7 @@ public class ServerDBSyncImpl implements ServerDBSync {
             if (_lockSyncMode.isLocked()) {
                 _lockSyncMode.unlock();
             }
+            throw ex;
         }
 
         return syncState;

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/65f63921/plugins/network-elements/juniper-contrail/test/org/apache/cloudstack/network/contrail/management/NetworkProviderTest.java
----------------------------------------------------------------------
diff --git a/plugins/network-elements/juniper-contrail/test/org/apache/cloudstack/network/contrail/management/NetworkProviderTest.java b/plugins/network-elements/juniper-contrail/test/org/apache/cloudstack/network/contrail/management/NetworkProviderTest.java
index 930ac4d..89294cc 100644
--- a/plugins/network-elements/juniper-contrail/test/org/apache/cloudstack/network/contrail/management/NetworkProviderTest.java
+++ b/plugins/network-elements/juniper-contrail/test/org/apache/cloudstack/network/contrail/management/NetworkProviderTest.java
@@ -462,15 +462,19 @@ public class NetworkProviderTest extends TestCase {
         } catch (IOException ex) {
             fail(ex.getMessage());
         }
-        
+
         //now db sync
-        if (_dbSync.syncAll(DBSyncGeneric.SYNC_MODE_UPDATE) == ServerDBSync.SYNC_STATE_OUT_OF_SYNC) {
-            s_logger.info("# Cloudstack DB & VNC are out of sync - resync done");
-        }
-        
-        if (_dbSync.syncAll(DBSyncGeneric.SYNC_MODE_CHECK) == ServerDBSync.SYNC_STATE_OUT_OF_SYNC) {
-            s_logger.info("# Cloudstack DB & VNC are still out of sync");
-            fail("DB Sync failed"); 
+        try {
+            if (_dbSync.syncAll(DBSyncGeneric.SYNC_MODE_UPDATE) == ServerDBSync.SYNC_STATE_OUT_OF_SYNC) {
+                s_logger.info("# Cloudstack DB & VNC are out of sync - resync done");
+            }
+
+            if (_dbSync.syncAll(DBSyncGeneric.SYNC_MODE_CHECK) == ServerDBSync.SYNC_STATE_OUT_OF_SYNC) {
+                s_logger.info("# Cloudstack DB & VNC are still out of sync");
+                fail("DB Sync failed");
+            }
+        } catch (Exception ex) {
+            fail(ex.getMessage());
         }
     }