[hornetq-commits] JBoss hornetq SVN: r9398 - in branches/2_2_0_HA_Improvements/src/main/org/hornetq/core/server: cluster/impl and 1 other directories.

do-not-reply at jboss.org do-not-reply at jboss.org
Sun Jul 11 07:45:37 EDT 2010


Author: timfox
Date: 2010-07-11 07:45:37 -0400 (Sun, 11 Jul 2010)
New Revision: 9398

Modified:
   branches/2_2_0_HA_Improvements/src/main/org/hornetq/core/server/cluster/ClusterManager.java
   branches/2_2_0_HA_Improvements/src/main/org/hornetq/core/server/cluster/impl/ClusterManagerImpl.java
   branches/2_2_0_HA_Improvements/src/main/org/hornetq/core/server/impl/HornetQServerImpl.java
Log:
HA improvements

Modified: branches/2_2_0_HA_Improvements/src/main/org/hornetq/core/server/cluster/ClusterManager.java
===================================================================
--- branches/2_2_0_HA_Improvements/src/main/org/hornetq/core/server/cluster/ClusterManager.java	2010-07-11 11:05:40 UTC (rev 9397)
+++ branches/2_2_0_HA_Improvements/src/main/org/hornetq/core/server/cluster/ClusterManager.java	2010-07-11 11:45:37 UTC (rev 9398)
@@ -38,11 +38,9 @@
 
    Set<BroadcastGroup> getBroadcastGroups();
 
-   void activate();
-   
    void registerTopologyListener(ClusterTopologyListener listener, boolean clusterConnection);
    
    void unregisterTopologyListener(ClusterTopologyListener listener, boolean clusterConnection);
    
-   void announceNode(String nodeID, boolean backup);
+   void activate();
 }

Modified: branches/2_2_0_HA_Improvements/src/main/org/hornetq/core/server/cluster/impl/ClusterManagerImpl.java
===================================================================
--- branches/2_2_0_HA_Improvements/src/main/org/hornetq/core/server/cluster/impl/ClusterManagerImpl.java	2010-07-11 11:05:40 UTC (rev 9397)
+++ branches/2_2_0_HA_Improvements/src/main/org/hornetq/core/server/cluster/impl/ClusterManagerImpl.java	2010-07-11 11:45:37 UTC (rev 9398)
@@ -150,6 +150,10 @@
          deployBridge(config);
       }
 
+      // Now announce presence
+
+      announceNode();
+
       started = true;
    }
 
@@ -213,36 +217,6 @@
       return clusterConnections.get(name.toString());
    }
 
-   public synchronized void activate()
-   {
-      for (BroadcastGroup bg : broadcastGroups.values())
-      {
-         bg.activate();
-      }
-
-      for (Bridge bridge : bridges.values())
-      {
-         bridge.activate();
-      }
-
-      for (ClusterConnection cc : clusterConnections.values())
-      {
-         cc.activate();
-      }
-
-      backup = false;
-   }
-
-   public void startAnnouncement()
-   {
-
-   }
-
-   public void stopAnnouncement()
-   {
-
-   }
-
    private Set<ClusterTopologyListener> clientListeners = new ConcurrentHashSet<ClusterTopologyListener>();
 
    private Set<ClusterTopologyListener> clusterConnectionListeners = new ConcurrentHashSet<ClusterTopologyListener>();
@@ -283,13 +257,26 @@
       }
    }
 
-   public synchronized void announceNode(final String nodeID, final boolean backup)
+   // backup node becomes live
+   public synchronized void activate()
    {
+      if (backup)
+      {
+         backup = false;
+
+         announceNode();
+      }
+   }
+
+   private synchronized void announceNode()
+   {
       // TODO does this really work with more than one cluster connection? I think not
 
       // Just take the first one for now
       ClusterConnection cc = clusterConnections.values().iterator().next();
 
+      String nodeID = server.getNodeID().toString();
+
       Pair<TransportConfiguration, TransportConfiguration> pair = topology.get(nodeID);
 
       if (pair == null)

Modified: branches/2_2_0_HA_Improvements/src/main/org/hornetq/core/server/impl/HornetQServerImpl.java
===================================================================
--- branches/2_2_0_HA_Improvements/src/main/org/hornetq/core/server/impl/HornetQServerImpl.java	2010-07-11 11:05:40 UTC (rev 9397)
+++ branches/2_2_0_HA_Improvements/src/main/org/hornetq/core/server/impl/HornetQServerImpl.java	2010-07-11 11:45:37 UTC (rev 9398)
@@ -366,10 +366,6 @@
 
             initialisePart2();
             
-            // Announce presence of live node to cluster
-            
-            clusterManager.announceNode(nodeID.toString(), false);
-
             log.info("Server is now live");
          }
          catch (Exception e)
@@ -490,10 +486,8 @@
 
             initialisePart1();
             
-            //Announce presence of this backup to rest of cluster
+            //TODO TODO at this point the clustermanager needs to announce it's presence so the cluster can know about the backup
             
-            clusterManager.announceNode(nodeID.toString(), true);
-            
             // We now look for the live.lock file - if it doesn't exist it means the live isn't started yet, so we wait
             // for that
             
@@ -526,12 +520,13 @@
                
                // Announce presence of live node to cluster
                
-               clusterManager.announceNode(nodeID.toString(), false);
-
+               
                break;
             }
             
             configuration.setBackup(false);
+            
+            clusterManager.activate();
 
             initialisePart2();
 



More information about the hornetq-commits mailing list