[jboss-cvs] JBoss Messaging SVN: r1796 - in trunk/tests/src/org/jboss/test/messaging: jms/clustering/base tools tools/jmx/rmi util
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Dec 14 16:09:32 EST 2006
Author: ovidiu.feodorov at jboss.com
Date: 2006-12-14 16:09:29 -0500 (Thu, 14 Dec 2006)
New Revision: 1796
Modified:
trunk/tests/src/org/jboss/test/messaging/jms/clustering/base/ClusteringTestBase.java
trunk/tests/src/org/jboss/test/messaging/tools/ServerManagement.java
trunk/tests/src/org/jboss/test/messaging/tools/jmx/rmi/LocalTestServer.java
trunk/tests/src/org/jboss/test/messaging/tools/jmx/rmi/RMITestServer.java
trunk/tests/src/org/jboss/test/messaging/util/ServerManagementTest.java
Log:
tweaks to get server resurrection working correctly
Modified: trunk/tests/src/org/jboss/test/messaging/jms/clustering/base/ClusteringTestBase.java
===================================================================
--- trunk/tests/src/org/jboss/test/messaging/jms/clustering/base/ClusteringTestBase.java 2006-12-14 20:56:41 UTC (rev 1795)
+++ trunk/tests/src/org/jboss/test/messaging/jms/clustering/base/ClusteringTestBase.java 2006-12-14 21:09:29 UTC (rev 1796)
@@ -112,7 +112,7 @@
for(int i = 0; i < nodeCount; i++)
{
- if (!ServerManagement.isKilled(i) && ServerManagement.getServer(i).isStarted())
+ if (ServerManagement.isStarted(i))
{
ServerManagement.log(ServerManagement.INFO, "Undeploying Server " + i, i);
ServerManagement.undeployQueue("testDistributedQueue", i);
Modified: trunk/tests/src/org/jboss/test/messaging/tools/ServerManagement.java
===================================================================
--- trunk/tests/src/org/jboss/test/messaging/tools/ServerManagement.java 2006-12-14 20:56:41 UTC (rev 1795)
+++ trunk/tests/src/org/jboss/test/messaging/tools/ServerManagement.java 2006-12-14 21:09:29 UTC (rev 1796)
@@ -95,6 +95,35 @@
return !isLocal();
}
+ public static boolean isClustered()
+ {
+ return "true".equals(System.getProperty("test.clustered"));
+ }
+
+ public static synchronized boolean isKilled(int index)
+ {
+ return killed[index];
+ }
+
+ public static synchronized boolean isStarted(int index)
+ {
+ Server s = servers[index];
+
+ if (s == null)
+ {
+ return false;
+ }
+
+ try
+ {
+ return s.isStarted();
+ }
+ catch(Exception e)
+ {
+ return false;
+ }
+ }
+
public static Server getServer()
{
return getServer(0);
@@ -276,6 +305,8 @@
Runtime.getRuntime().exec(sb.toString());
+ killed[index] = false;
+
log.info("VM for Server " + index + " spawned");
}
@@ -298,11 +329,6 @@
killed[index] = true;
}
- public static synchronized boolean isKilled(int index)
- {
- return killed[index];
- }
-
public static void disconnect() throws Exception
{
if (isRemote())
Modified: trunk/tests/src/org/jboss/test/messaging/tools/jmx/rmi/LocalTestServer.java
===================================================================
--- trunk/tests/src/org/jboss/test/messaging/tools/jmx/rmi/LocalTestServer.java 2006-12-14 20:56:41 UTC (rev 1795)
+++ trunk/tests/src/org/jboss/test/messaging/tools/jmx/rmi/LocalTestServer.java 2006-12-14 21:09:29 UTC (rev 1796)
@@ -833,6 +833,11 @@
// Public --------------------------------------------------------
+ public int getServerIndex()
+ {
+ return serverIndex;
+ }
+
// Package protected ---------------------------------------------
ServiceContainer getServiceContainer()
Modified: trunk/tests/src/org/jboss/test/messaging/tools/jmx/rmi/RMITestServer.java
===================================================================
--- trunk/tests/src/org/jboss/test/messaging/tools/jmx/rmi/RMITestServer.java 2006-12-14 20:56:41 UTC (rev 1795)
+++ trunk/tests/src/org/jboss/test/messaging/tools/jmx/rmi/RMITestServer.java 2006-12-14 21:09:29 UTC (rev 1796)
@@ -453,8 +453,25 @@
{
log.info("shutting down the VM");
+
try
{
+ // unregister myself from the RMI registry
+
+ Registry registry = LocateRegistry.getRegistry(DEFAULT_REGISTRY_PORT);
+ registry.unbind(RMI_SERVER_PREFIX + server.getServerIndex());
+
+ log.info("unregistred from " + registry);
+
+
+ }
+ catch(Exception e)
+ {
+ log.error("Failed to unregister", e);
+ }
+
+ try
+ {
Thread.sleep(250);
}
catch(Exception e)
Modified: trunk/tests/src/org/jboss/test/messaging/util/ServerManagementTest.java
===================================================================
--- trunk/tests/src/org/jboss/test/messaging/util/ServerManagementTest.java 2006-12-14 20:56:41 UTC (rev 1795)
+++ trunk/tests/src/org/jboss/test/messaging/util/ServerManagementTest.java 2006-12-14 21:09:29 UTC (rev 1796)
@@ -10,7 +10,6 @@
import org.jboss.test.messaging.tools.ServerManagement;
import javax.naming.InitialContext;
-import javax.naming.Context;
import javax.management.ObjectName;
/**
@@ -104,6 +103,39 @@
}
}
+ /**
+ * Needs to be run in clustered mode.
+ */
+ public void testRessurect() throws Exception
+ {
+
+ if (!ServerManagement.isClustered())
+ {
+ fail("This test must be run in clustered mode!");
+ }
+
+ ServerManagement.start("all", 1);
+
+ ServerManagement.kill(1);
+
+ // wait a bit for the server to die
+
+ log.info("Sleeping for 10 seconds ...");
+
+ Thread.sleep(10000);
+
+ // resurrect the server
+
+ ServerManagement.spawn(1);
+ ServerManagement.start("all", 1);
+
+ Integer index = (Integer)ServerManagement.
+ getAttribute(1, new ObjectName("jboss.messaging:service=ServerPeer"), "serverPeerID");
+
+ assertEquals(1, index.intValue());
+ }
+
+
// Package protected ---------------------------------------------
// Protected -----------------------------------------------------
More information about the jboss-cvs-commits
mailing list