[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