[jboss-cvs] JBossAS SVN: r83127 - in trunk: testsuite and 3 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Jan 20 23:20:42 EST 2009
Author: bstansberry at jboss.com
Date: 2009-01-20 23:20:42 -0500 (Tue, 20 Jan 2009)
New Revision: 83127
Modified:
trunk/cluster/src/etc/deploy-hasingleton-jboss-beans.xml
trunk/testsuite/build.xml
trunk/testsuite/imports/server-config.xml
trunk/testsuite/src/main/org/jboss/test/cluster/defaultcfg/test/HASingletonDeployerTestCase.java
trunk/testsuite/src/resources/cluster/hasingleton/deployer/test-deploy-hasingleton-jboss-beans.xml
Log:
[JBAS-6363] Ensure HASingletonDeployer BarrierController gets JMX Notifications
Modified: trunk/cluster/src/etc/deploy-hasingleton-jboss-beans.xml
===================================================================
--- trunk/cluster/src/etc/deploy-hasingleton-jboss-beans.xml 2009-01-21 03:48:22 UTC (rev 83126)
+++ trunk/cluster/src/etc/deploy-hasingleton-jboss-beans.xml 2009-01-21 04:20:42 UTC (rev 83127)
@@ -34,6 +34,9 @@
<annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss.ha:service=HASingletonDeployer", exposedInterface=org.jboss.ha.singleton.HASingletonControllerMBean.class, registerDirectly=true)</annotation>
<depends>HAPartition</depends>
+ <!-- Have the BarrierController that listens for our JMX
+ notifications start first. -->
+ <depends>HASingletonDeployerBarrierController</depends>
<property name="HAPartition"><inject bean="HAPartition"/></property>
<property name="target"><inject bean="HASingletonDeploymentScanner"/></property>
@@ -77,15 +80,16 @@
| <enable type="org.jboss.ha.singleton.stopped"/>
-->
<bean class="org.jboss.system.BarrierController"
- name="jboss.ha:service=HASingletonDeployer,type=BarrierController">
+ name="HASingletonDeployerBarrierController">
<annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss.ha:service=HASingletonDeployer,type=BarrierControllerMBean", exposedInterface=org.jboss.system.BarrierControllerMBean.class, registerDirectly=true)</annotation>
<!-- Dependent services will depend on this mbean -->
<property name="barrierObjectName">jboss.ha:service=HASingletonDeployer,type=Barrier</property>
- <!-- Whether to subscribe for notifications after startup -->
- <property name="dynamicSubscriptions">false</property>
+ <!-- Subscribe for notifications after startup since we start
+ before the HASingletonDeployer. -->
+ <property name="dynamicSubscriptions">true</property>
<!-- The notification subscription handback that starts the barrier -->
<property name="startBarrierHandback">start</property>
<!-- The notification subscription handback that stops the barrier -->
Modified: trunk/testsuite/build.xml
===================================================================
--- trunk/testsuite/build.xml 2009-01-21 03:48:22 UTC (rev 83126)
+++ trunk/testsuite/build.xml 2009-01-21 04:20:42 UTC (rev 83127)
@@ -72,12 +72,14 @@
<property name="node0.jndi.url" value="jnp://${node0}:1099" />
<property name="node0.hajndi.url" value="jnp://${node0}:1100" />
<property name="node0.jndi.http.url" value="http://${node0}:8080/invoker/JNDIFactory" />
+ <property name="node0.jgroups.bind_addr" value="${node0}" />
<!-- Cluster node1 defaults -->
<property name="node1" value="${hostname}" />
<property name="node1.http.url" value="http://${node1}:8080" />
<property name="node1.jndi.url" value="jnp://${node1}:1099" />
<property name="node1.hajndi.url" value="jnp://${node1}:1100" />
<property name="node1.jndi.http.url" value="http://${node1}:8080/invoker/JNDIFactory" />
+ <property name="node1.jgroups.bind_addr" value="${node1}" />
<!-- UDP Group -->
<!-- The value of the -u option passed to jboss -->
Modified: trunk/testsuite/imports/server-config.xml
===================================================================
--- trunk/testsuite/imports/server-config.xml 2009-01-21 03:48:22 UTC (rev 83126)
+++ trunk/testsuite/imports/server-config.xml 2009-01-21 04:20:42 UTC (rev 83127)
@@ -226,6 +226,7 @@
<sysproperty key="resolve.dns" value="false" />
<sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
<sysproperty key="jboss.messaging.ServerPeerID" value="0" />
+ <sysproperty key="jgroups.bind_addr" value="${node0.jgroups.bind_addr}" />
</server>
<server name="node1" host="${node1}">
<jvmarg value="-Xms128m" />
@@ -236,6 +237,7 @@
<sysproperty key="resolve.dns" value="false" />
<sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
<sysproperty key="jboss.messaging.ServerPeerID" value="1" />
+ <sysproperty key="jgroups.bind_addr" value="${node1.jgroups.bind_addr}" />
</server>
<server name="clustered-ejb3-noBR-0" host="${node0}">
<jvmarg value="-Xms128m" />
@@ -246,6 +248,7 @@
<sysproperty key="resolve.dns" value="false" />
<sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
<sysproperty key="jboss.messaging.ServerPeerID" value="0" />
+ <sysproperty key="jgroups.bind_addr" value="${node0.jgroups.bind_addr}" />
</server>
<server name="clustered-ejb3-noBR-1" host="${node1}">
<jvmarg value="-Xms128m" />
@@ -256,6 +259,7 @@
<sysproperty key="resolve.dns" value="false" />
<sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
<sysproperty key="jboss.messaging.ServerPeerID" value="1" />
+ <sysproperty key="jgroups.bind_addr" value="${node1.jgroups.bind_addr}" />
</server>
<server name="cluster-udp-sync-0" host="${node0}">
<jvmarg value="-Xms128m" />
@@ -267,6 +271,7 @@
<sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
<sysproperty key="jboss.multiplexer.stack" value="udp-sync" />
<sysproperty key="jboss.messaging.ServerPeerID" value="0" />
+ <sysproperty key="jgroups.bind_addr" value="${node0.jgroups.bind_addr}" />
</server>
<server name="cluster-udp-sync-1" host="${node1}">
<jvmarg value="-Xms128m" />
@@ -278,6 +283,7 @@
<sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
<sysproperty key="jboss.multiplexer.stack" value="udp-sync" />
<sysproperty key="jboss.messaging.ServerPeerID" value="1" />
+ <sysproperty key="jgroups.bind_addr" value="${node1.jgroups.bind_addr}" />
</server>
<server name="cluster-udp-0" host="${node0}" partition="${partitionName}">
<jvmarg value="-Xms128m" />
@@ -290,6 +296,7 @@
<sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
<sysproperty key="jboss.messaging.ServerPeerID" value="0" />
<sysproperty key="node0.bind.address" value="${node0}" />
+ <sysproperty key="jgroups.bind_addr" value="${node0.jgroups.bind_addr}" />
</server>
<server name="cluster-udp-1" host="${node1}" partition="${partitionName}">
<jvmarg value="-Xms128m" />
@@ -302,6 +309,7 @@
<sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
<sysproperty key="jboss.messaging.ServerPeerID" value="1" />
<sysproperty key="node0.bind.address" value="${node0}" />
+ <sysproperty key="jgroups.bind_addr" value="${node1.jgroups.bind_addr}" />
</server>
<server name="cluster-field-udp-0" host="${node0}">
<jvmarg value="-Xms128m" />
@@ -313,6 +321,7 @@
<sysproperty key="resolve.dns" value="false" />
<sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
<sysproperty key="jboss.messaging.ServerPeerID" value="0" />
+ <sysproperty key="jgroups.bind_addr" value="${node0.jgroups.bind_addr}" />
</server>
<server name="cluster-field-udp-1" host="${node1}">
<jvmarg value="-Xms128m" />
@@ -324,6 +333,7 @@
<sysproperty key="resolve.dns" value="false" />
<sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
<sysproperty key="jboss.messaging.ServerPeerID" value="1" />
+ <sysproperty key="jgroups.bind_addr" value="${node1.jgroups.bind_addr}" />
</server>
<server name="cluster-udp-SYNC-0" host="${node0}">
<jvmarg value="-Xms128m" />
@@ -336,6 +346,7 @@
<sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
<sysproperty key="jboss.multiplexer.stack" value="udp-sync" />
<sysproperty key="jboss.messaging.ServerPeerID" value="0" />
+ <sysproperty key="jgroups.bind_addr" value="${node0.jgroups.bind_addr}" />
</server>
<server name="cluster-udp-SYNC-1" host="${node1}">
<jvmarg value="-Xms128m" />
@@ -348,6 +359,7 @@
<sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
<sysproperty key="jboss.multiplexer.stack" value="udp-sync" />
<sysproperty key="jboss.messaging.ServerPeerID" value="1" />
+ <sysproperty key="jgroups.bind_addr" value="${node1.jgroups.bind_addr}" />
</server>
<server name="cluster-field-udp-SYNC-0" host="${node0}">
<jvmarg value="-Xms128m" />
@@ -360,6 +372,7 @@
<sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
<sysproperty key="jboss.multiplexer.stack" value="udp-sync" />
<sysproperty key="jboss.messaging.ServerPeerID" value="0" />
+ <sysproperty key="jgroups.bind_addr" value="${node0.jgroups.bind_addr}" />
</server>
<server name="cluster-field-udp-SYNC-1" host="${node1}">
<jvmarg value="-Xms128m" />
@@ -372,6 +385,7 @@
<sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
<sysproperty key="jboss.multiplexer.stack" value="udp-sync" />
<sysproperty key="jboss.messaging.ServerPeerID" value="1" />
+ <sysproperty key="jgroups.bind_addr" value="${node1.jgroups.bind_addr}" />
</server>
<server name="cluster-udp-BR-0" host="${node0}">
<jvmarg value="-Xms128m" />
@@ -384,6 +398,7 @@
<sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
<sysproperty key="jboss.multiplexer.stack" value="udp-sync" />
<sysproperty key="jboss.messaging.ServerPeerID" value="0" />
+ <sysproperty key="jgroups.bind_addr" value="${node0.jgroups.bind_addr}" />
</server>
<server name="cluster-udp-BR-1" host="${node1}">
<jvmarg value="-Xms128m" />
@@ -396,6 +411,7 @@
<sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
<sysproperty key="jboss.multiplexer.stack" value="udp-sync" />
<sysproperty key="jboss.messaging.ServerPeerID" value="1" />
+ <sysproperty key="jgroups.bind_addr" value="${node1.jgroups.bind_addr}" />
</server>
<server name="cluster-field-udp-BR-0" host="${node0}">
<jvmarg value="-Xms128m" />
@@ -408,6 +424,7 @@
<sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
<sysproperty key="jboss.multiplexer.stack" value="udp-sync" />
<sysproperty key="jboss.messaging.ServerPeerID" value="0" />
+ <sysproperty key="jgroups.bind_addr" value="${node0.jgroups.bind_addr}" />
</server>
<server name="cluster-field-udp-BR-1" host="${node1}">
<jvmarg value="-Xms128m" />
@@ -420,6 +437,7 @@
<sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
<sysproperty key="jboss.multiplexer.stack" value="udp-sync" />
<sysproperty key="jboss.messaging.ServerPeerID" value="1" />
+ <sysproperty key="jgroups.bind_addr" value="${node1.jgroups.bind_addr}" />
</server>
<server name="cluster-tcp-0" host="${node0}" partition="${partitionName}">
<jvmarg value="-Xms128m" />
@@ -433,6 +451,7 @@
<sysproperty key="jgroups.tcpping.initial_hosts" value="${node0}[7600],${node1}[7600]"/>
<sysproperty key="jboss.messaging.ServerPeerID" value="0" />
<sysproperty key="node0.bind.address" value="${node0}" />
+ <sysproperty key="jgroups.bind_addr" value="${node0.jgroups.bind_addr}" />
</server>
<server name="cluster-tcp-1" host="${node1}" partition="${partitionName}">
<jvmarg value="-Xms128m" />
@@ -446,6 +465,7 @@
<sysproperty key="jgroups.tcpping.initial_hosts" value="${node0}[7600],${node1}[7600]"/>
<sysproperty key="jboss.messaging.ServerPeerID" value="1" />
<sysproperty key="node0.bind.address" value="${node0}" />
+ <sysproperty key="jgroups.bind_addr" value="${node1.jgroups.bind_addr}" />
</server>
<server name="cluster-tcp-sync-0" host="${node0}">
<jvmarg value="-Xms128m" />
@@ -458,6 +478,7 @@
<sysproperty key="jboss.multiplexer.stack" value="tcp-sync" />
<sysproperty key="jgroups.tcpping.initial_hosts" value="${node0}[7650],${node1}[7650]"/>
<sysproperty key="jboss.messaging.ServerPeerID" value="0" />
+ <sysproperty key="jgroups.bind_addr" value="${node0.jgroups.bind_addr}" />
</server>
<server name="cluster-tcp-sync-1" host="${node1}">
<jvmarg value="-Xms128m" />
@@ -470,6 +491,7 @@
<sysproperty key="jboss.multiplexer.stack" value="tcp-sync" />
<sysproperty key="jgroups.tcpping.initial_hosts" value="${node0}[7650],${node1}[7650]"/>
<sysproperty key="jboss.messaging.ServerPeerID" value="1" />
+ <sysproperty key="jgroups.bind_addr" value="${node1.jgroups.bind_addr}" />
</server>
<server name="cluster-field-tcp-0" host="${node0}">
<jvmarg value="-Xms128m" />
@@ -482,6 +504,7 @@
<sysproperty key="jboss.multiplexer.stack" value="tcp" />
<sysproperty key="jgroups.tcpping.initial_hosts" value="${node0}[7600],${node1}[7600]"/>
<sysproperty key="jboss.messaging.ServerPeerID" value="0" />
+ <sysproperty key="jgroups.bind_addr" value="${node0.jgroups.bind_addr}" />
</server>
<server name="cluster-field-tcp-1" host="${node1}">
<jvmarg value="-Xms128m" />
@@ -494,6 +517,7 @@
<sysproperty key="jboss.multiplexer.stack" value="tcp" />
<sysproperty key="jgroups.tcpping.initial_hosts" value="${node0}[7600],${node1}[7600]"/>
<sysproperty key="jboss.messaging.ServerPeerID" value="1" />
+ <sysproperty key="jgroups.bind_addr" value="${node1.jgroups.bind_addr}" />
</server>
<server name="cluster-tcp-SYNC-0" host="${node0}">
<jvmarg value="-Xms128m" />
@@ -506,6 +530,7 @@
<sysproperty key="jboss.multiplexer.stack" value="tcp-sync" />
<sysproperty key="jgroups.tcpping.initial_hosts" value="${node0}[7650],${node1}[7650]"/>
<sysproperty key="jboss.messaging.ServerPeerID" value="0" />
+ <sysproperty key="jgroups.bind_addr" value="${node0.jgroups.bind_addr}" />
</server>
<server name="cluster-tcp-SYNC-1" host="${node1}">
<jvmarg value="-Xms128m" />
@@ -518,6 +543,7 @@
<sysproperty key="jboss.multiplexer.stack" value="tcp-sync" />
<sysproperty key="jgroups.tcpping.initial_hosts" value="${node0}[7650],${node1}[7650]"/>
<sysproperty key="jboss.messaging.ServerPeerID" value="1" />
+ <sysproperty key="jgroups.bind_addr" value="${node1.jgroups.bind_addr}" />
</server>
<server name="cluster-field-tcp-SYNC-0" host="${node0}">
<jvmarg value="-Xms128m" />
@@ -530,6 +556,7 @@
<sysproperty key="jboss.multiplexer.stack" value="tcp-sync" />
<sysproperty key="jgroups.tcpping.initial_hosts" value="${node0}[7650],${node1}[7650]"/>
<sysproperty key="jboss.messaging.ServerPeerID" value="0" />
+ <sysproperty key="jgroups.bind_addr" value="${node0.jgroups.bind_addr}" />
</server>
<server name="cluster-field-tcp-SYNC-1" host="${node1}">
<jvmarg value="-Xms128m" />
@@ -542,6 +569,7 @@
<sysproperty key="jboss.multiplexer.stack" value="tcp-sync" />
<sysproperty key="jgroups.tcpping.initial_hosts" value="${node0}[7650],${node1}[7650]"/>
<sysproperty key="jboss.messaging.ServerPeerID" value="1" />
+ <sysproperty key="jgroups.bind_addr" value="${node1.jgroups.bind_addr}" />
</server>
<server name="cluster-tcp-BR-0" host="${node0}">
<jvmarg value="-Xms128m" />
@@ -554,6 +582,7 @@
<sysproperty key="jboss.multiplexer.stack" value="tcp-sync" />
<sysproperty key="jgroups.tcpping.initial_hosts" value="${node0}[7650],${node1}[7650]"/>
<sysproperty key="jboss.messaging.ServerPeerID" value="0" />
+ <sysproperty key="jgroups.bind_addr" value="${node0.jgroups.bind_addr}" />
</server>
<server name="cluster-tcp-BR-1" host="${node1}">
<jvmarg value="-Xms128m" />
@@ -566,6 +595,7 @@
<sysproperty key="jboss.multiplexer.stack" value="tcp-sync" />
<sysproperty key="jgroups.tcpping.initial_hosts" value="${node0}[7650],${node1}[7650]"/>
<sysproperty key="jboss.messaging.ServerPeerID" value="1" />
+ <sysproperty key="jgroups.bind_addr" value="${node1.jgroups.bind_addr}" />
</server>
<server name="cluster-field-tcp-BR-0" host="${node0}">
<jvmarg value="-Xms128m" />
@@ -578,6 +608,7 @@
<sysproperty key="jboss.multiplexer.stack" value="tcp-sync" />
<sysproperty key="jgroups.tcpping.initial_hosts" value="${node0}[7650],${node1}[7650]"/>
<sysproperty key="jboss.messaging.ServerPeerID" value="0" />
+ <sysproperty key="jgroups.bind_addr" value="${node0.jgroups.bind_addr}" />
</server>
<server name="cluster-field-tcp-BR-1" host="${node1}">
<jvmarg value="-Xms128m" />
@@ -590,6 +621,7 @@
<sysproperty key="jboss.multiplexer.stack" value="tcp-sync" />
<sysproperty key="jgroups.tcpping.initial_hosts" value="${node0}[7650],${node1}[7650]"/>
<sysproperty key="jboss.messaging.ServerPeerID" value="1" />
+ <sysproperty key="jgroups.bind_addr" value="${node1.jgroups.bind_addr}" />
</server>
<server name="tomcat-sso-cluster0" host="${node0}">
<jvmarg value="-Xms128m" />
@@ -601,6 +633,7 @@
<sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
<sysproperty key="jboss.multiplexer.stack" value="udp-sync" />
<sysproperty key="jboss.messaging.ServerPeerID" value="0" />
+ <sysproperty key="jgroups.bind_addr" value="${node0.jgroups.bind_addr}" />
</server>
<server name="tomcat-sso-cluster1" host="${node1}">
<jvmarg value="-Xms128m" />
@@ -612,6 +645,7 @@
<sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
<sysproperty key="jboss.multiplexer.stack" value="udp-sync" />
<sysproperty key="jboss.messaging.ServerPeerID" value="1" />
+ <sysproperty key="jgroups.bind_addr" value="${node1.jgroups.bind_addr}" />
</server>
<server name="binding-manager1" host="${node0}" httpPort="8180" rmiPort="1199">
<jvmarg value="-Xms128m" />
@@ -621,6 +655,7 @@
<sysproperty key="java.net.preferIPv4Stack" value="true" />
<sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
<sysproperty key="jboss.messaging.ServerPeerID" value="0" />
+ <sysproperty key="jgroups.bind_addr" value="${node0.jgroups.bind_addr}" />
</server>
<server name="binding-manager2" host="${node0}" httpPort="8280" rmiPort="1299">
<jvmarg value="-Xms128m" />
@@ -630,6 +665,7 @@
<sysproperty key="java.net.preferIPv4Stack" value="true" />
<sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
<sysproperty key="jboss.messaging.ServerPeerID" value="1" />
+ <sysproperty key="jgroups.bind_addr" value="${node1.jgroups.bind_addr}" />
</server>
<server name="jrmp-invoker" host="${node0}">
<jvmarg value="-Xms128m" />
@@ -688,6 +724,7 @@
<sysproperty key="jboss.messaging.ServerPeerID" value="0" />
<sysproperty key="node0.bind.address" value="${node0}" />
<sysproperty key="jboss.partition.name" value="${partitionName}"/>
+ <sysproperty key="jgroups.bind_addr" value="${node0.jgroups.bind_addr}" />
</server>
<server name="cluster-classloader-leak-1" host="${node1}">
<jvmarg value="-Xms128m" />
@@ -701,8 +738,9 @@
<sysproperty key="jboss.messaging.ServerPeerID" value="1" />
<sysproperty key="node0.bind.address" value="${node0}" />
<sysproperty key="jboss.partition.name" value="${partitionName}"/>
+ <sysproperty key="jgroups.bind_addr" value="${node1.jgroups.bind_addr}" />
</server>
- <server name="profileservice" host="${node0}">
+ <server name="profileservice" host="${node0}" partition="${partitionName}">
<jvmarg value="-Xms128m" />
<jvmarg value="-Xmx512m" />
<jvmarg value="-XX:MaxPermSize=512m" />
@@ -711,7 +749,7 @@
<sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
<sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
</server>
- <server name="cluster-profilesvc-0" host="${node0}">
+ <server name="cluster-profilesvc-0" host="${node0}" partition="${partitionName}">
<jvmarg value="-Xms128m" />
<jvmarg value="-Xmx512m" />
<jvmarg value="-XX:MaxPermSize=512m" />
@@ -722,8 +760,9 @@
<sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
<sysproperty key="jboss.messaging.ServerPeerID" value="0" />
<sysproperty key="jboss.partition.name" value="${partitionName}"/>
+ <sysproperty key="jgroups.bind_addr" value="${node0.jgroups.bind_addr}" />
</server>
- <server name="cluster-profilesvc-1" host="${node1}">
+ <server name="cluster-profilesvc-1" host="${node1}" partition="${partitionName}">
<jvmarg value="-Xms128m" />
<jvmarg value="-Xmx512m" />
<jvmarg value="-XX:MaxPermSize=512m" />
@@ -734,6 +773,7 @@
<sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
<sysproperty key="jboss.messaging.ServerPeerID" value="1" />
<sysproperty key="jboss.partition.name" value="${partitionName}"/>
+ <sysproperty key="jgroups.bind_addr" value="${node1.jgroups.bind_addr}" />
</server>
<server name="cluster-ustxsticky-0" host="${node0}">
<jvmarg value="-Xms128m" />
@@ -784,6 +824,7 @@
<jvmarg value="-XX:+HeapDumpOnOutOfMemoryError" />
<sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
<sysproperty key="java.net.preferIPv4Stack" value="true" />
+ <sysproperty key="jgroups.bind_addr" value="${node0.jgroups.bind_addr}" />
</server>
<server name="jbm-cluster2" host="${node1}">
@@ -791,11 +832,11 @@
<jvmarg value="-Xmx512m" />
<jvmarg value="-XX:MaxPermSize=512m" />
<jvmarg value="-XX:+HeapDumpOnOutOfMemoryError" />
- <sysproperty key="java.net.preferIPv4Stack" value="true" />
<sysproperty key="jbossnode0" value="${node0}"/>
<sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
- <sysproperty key="java.net.preferIPv4Stack" value="true" />
- <sysproperty key="jboss.messaging.ServerPeerID" value="1" />
+ <sysproperty key="java.net.preferIPv4Stack" value="true" />
+ <sysproperty key="jboss.messaging.ServerPeerID" value="1" />
+ <sysproperty key="jgroups.bind_addr" value="${node1.jgroups.bind_addr}" />
</server>
<server name="web" host="${node0}" serverUrl="${node0.jndi.http.url}">
Modified: trunk/testsuite/src/main/org/jboss/test/cluster/defaultcfg/test/HASingletonDeployerTestCase.java
===================================================================
--- trunk/testsuite/src/main/org/jboss/test/cluster/defaultcfg/test/HASingletonDeployerTestCase.java 2009-01-21 03:48:22 UTC (rev 83126)
+++ trunk/testsuite/src/main/org/jboss/test/cluster/defaultcfg/test/HASingletonDeployerTestCase.java 2009-01-21 04:20:42 UTC (rev 83127)
@@ -27,6 +27,7 @@
import junit.framework.Test;
+import org.jboss.system.ServiceMBean;
import org.jboss.test.JBossClusteredTestCase;
/**
@@ -38,7 +39,14 @@
public static final String SINGLETON_DEPLOYER_ONAME = "jboss.ha:service=TestHASingletonDeployer";
public static final String SINGLETON_DEPLOYMENT = "jboss.system:service=HASingletonTestThreadPool";
public static final String SINGLETON_DEPLOYER = "test-deploy-hasingleton-jboss-beans.xml";
+ public static final String SINGLETON_BARRIER_ONAME = "jboss.ha:service=TestHASingletonDeployer,type=Barrier";
+ public static final Integer CREATED_STATE = new Integer(ServiceMBean.CREATED);
+ public static final Integer STARTED_STATE = new Integer(ServiceMBean.STARTED);
+ public static final Integer STOPPED_STATE = new Integer(ServiceMBean.STOPPED);
+ public static final String STD_SINGLETON_DEPLOYER_ONAME = "jboss.ha:service=HASingletonDeployer";
+ public static final String STD_SINGLETON_BARRIER_ONAME = "jboss.ha:service=HASingletonDeployer,type=Barrier";
+
/**
* Create a new ProfileRepositoryHASingletonDeployerTestCase.
*
@@ -54,59 +62,106 @@
return getDeploySetup(HASingletonDeployerTestCase.class, SINGLETON_DEPLOYER);
}
+ /**
+ * Accesses the test HASingletonDeployer beans deployed by the test wrapper
+ * and validates that deployments are done on the master node and not on
+ * the non-master. Also validates that a Barrier has reached the start
+ * state on the master and not on the non-master. Then undeploys
+ * the deployer on the master node and checks service failover. Then undeploys
+ * on the other node and redeploys on node1, checking node1 became master
+ * with the target services deployed and the Barrier started. Then deploys
+ * on node0, confirming that node1 remained the master and node0 didn't
+ * deploy the target services or bring a BARRIER to STARTED state.
+ *
+ * @throws Exception
+ */
public void testHASingletonDeployer() throws Exception
{
MBeanServerConnection[] adaptors = getAdaptors();
- boolean node0Master = isMaster(adaptors[0]);
- assertFalse(node0Master == isMaster(adaptors[1]));
+ boolean node0Master = isMaster(adaptors[0], false);
+ assertFalse(node0Master == isMaster(adaptors[1], false));
int origMasterIndex = node0Master ? 0 : 1;
int origNonMasterIndex = node0Master ? 1 : 0;
assertTrue("singleton is not deployed on node " + origMasterIndex, isDeployed(SINGLETON_DEPLOYMENT, adaptors[origMasterIndex]));
assertFalse("singleton is deployed on node " + origNonMasterIndex, isDeployed(SINGLETON_DEPLOYMENT, adaptors[origNonMasterIndex]));
+ assertBarrierStatus(adaptors[0], node0Master, false);
+ assertBarrierStatus(adaptors[1], !node0Master, false);
+
undeploy(adaptors[origMasterIndex], SINGLETON_DEPLOYER);
// The singleton is triggered asynchronously, so give it time to work
- sleep(1000);
+ sleep(2000);
assertTrue(isDeployed(SINGLETON_DEPLOYMENT, adaptors[origNonMasterIndex]));
assertFalse(isDeployed(SINGLETON_DEPLOYMENT, adaptors[origMasterIndex]));
+ assertBarrierStatus(adaptors[origNonMasterIndex], true, false);
+ assertFalse(isDeployed(SINGLETON_BARRIER_ONAME, adaptors[origMasterIndex]));
+
undeploy(adaptors[origNonMasterIndex], SINGLETON_DEPLOYER);
- sleep(1000);
+ sleep(2000);
assertFalse(isDeployed(SINGLETON_DEPLOYMENT, adaptors[0]));
assertFalse(isDeployed(SINGLETON_DEPLOYMENT, adaptors[1]));
+ assertFalse(isDeployed(SINGLETON_BARRIER_ONAME, adaptors[0]));
+ assertFalse(isDeployed(SINGLETON_BARRIER_ONAME, adaptors[1]));
+
deploy(adaptors[1], SINGLETON_DEPLOYER);
- sleep(1000);
+ sleep(2000);
assertTrue(isDeployed(SINGLETON_DEPLOYMENT, adaptors[1]));
assertFalse(isDeployed(SINGLETON_DEPLOYMENT, adaptors[0]));
+ assertBarrierStatus(adaptors[1], true, false);
+ assertFalse(isDeployed(SINGLETON_BARRIER_ONAME, adaptors[0]));
+
deploy(adaptors[0], SINGLETON_DEPLOYER);
- sleep(1000);
+ sleep(2000);
// per policy, node0 takes over as master
assertTrue(isDeployed(SINGLETON_DEPLOYMENT, adaptors[origMasterIndex]));
assertFalse(isDeployed(SINGLETON_DEPLOYMENT, adaptors[origNonMasterIndex]));
+
+ assertBarrierStatus(adaptors[0], true, false);
+ assertBarrierStatus(adaptors[1], false, false);
}
+ /**
+ * Accesses the standard HASingletonDeployer beans, validating that one node
+ * is the master and the other isn't, and that the HASingleto Barrier is
+ * STARTED on the master and CREATED on the non-master. A basic check that
+ * the "all" config is correct. JBAS-6363.
+ *
+ * @throws Exception
+ */
+ public void testAllConfiguration() throws Exception
+ {
+ MBeanServerConnection[] adaptors = getAdaptors();
+
+ boolean node0Master = isMaster(adaptors[0], true);
+ assertFalse(node0Master == isMaster(adaptors[1], true));
+
+ assertBarrierStatus(adaptors[0], node0Master, true);
+ assertBarrierStatus(adaptors[1], !node0Master, true);
+ }
+
protected boolean isDeployed(String deployment, MBeanServerConnection server) throws Exception
{
return server.isRegistered(new ObjectName(deployment));
}
- private boolean isMaster(MBeanServerConnection server)
+ private boolean isMaster(MBeanServerConnection server, boolean stdTest)
{
try
{
- ObjectName oname = new ObjectName(SINGLETON_DEPLOYER_ONAME);
+ ObjectName oname = new ObjectName(stdTest ? STD_SINGLETON_DEPLOYER_ONAME : SINGLETON_DEPLOYER_ONAME);
return ((Boolean) server.invoke(oname, "isMasterNode", new Object[]{}, new String[]{})).booleanValue();
}
catch (Exception e)
@@ -114,5 +169,19 @@
throw new RuntimeException(e);
}
}
+
+ private void assertBarrierStatus(MBeanServerConnection server, boolean isMaster, boolean stdTest) throws Exception
+ {
+ ObjectName oname = new ObjectName(stdTest ? STD_SINGLETON_BARRIER_ONAME : SINGLETON_BARRIER_ONAME);
+ Integer state = (Integer) server.getAttribute(oname, "State");
+ if (isMaster)
+ {
+ assertEquals(STARTED_STATE, state);
+ }
+ else
+ {
+ assertTrue("State " + state + " is valid", CREATED_STATE.equals(state) || STOPPED_STATE.equals(state));
+ }
+ }
}
Modified: trunk/testsuite/src/resources/cluster/hasingleton/deployer/test-deploy-hasingleton-jboss-beans.xml
===================================================================
--- trunk/testsuite/src/resources/cluster/hasingleton/deployer/test-deploy-hasingleton-jboss-beans.xml 2009-01-21 03:48:22 UTC (rev 83126)
+++ trunk/testsuite/src/resources/cluster/hasingleton/deployer/test-deploy-hasingleton-jboss-beans.xml 2009-01-21 04:20:42 UTC (rev 83127)
@@ -24,6 +24,7 @@
<annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss.ha:service=TestHASingletonDeployer", exposedInterface=org.jboss.ha.singleton.HASingletonControllerMBean.class, registerDirectly=true)</annotation>
<depends>HAPartition</depends>
+ <depends>TestHASingletonDeploymentBarrierController</depends>
<property name="HAPartition"><inject bean="HAPartition"/></property>
<property name="target"><inject bean="TestHASingletonDeploymentScanner"/></property>
@@ -48,4 +49,56 @@
</bean>
+ <bean class="org.jboss.system.BarrierController"
+ name="TestHASingletonDeploymentBarrierController">
+
+ <annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss.ha:service=TestHASingletonDeployerBarrierControllerMBean", exposedInterface=org.jboss.system.BarrierControllerMBean.class, registerDirectly=true)</annotation>
+
+ <!-- Dependent services will depend on this mbean -->
+ <property name="barrierObjectName">jboss.ha:service=TestHASingletonDeployer,type=Barrier</property>
+
+ <!-- Whether to subscribe for notifications after startup -->
+ <property name="dynamicSubscriptions">true</property>
+ <!-- The notification subscription handback that starts the barrier -->
+ <property name="startBarrierHandback">start</property>
+ <!-- The notification subscription handback that stops the barrier -->
+ <property name="stopBarrierHandback">stop</property>
+
+ <!-- The notifications to subscribe for, along with their handbacks -->
+ <property name="subscriptions">
+ <list>
+ <!--value-->
+ <bean class="org.jboss.system.ListenerServiceMBeanSupport$SubscriptionInfo">
+ <constructor>
+ <parameter>jboss.ha:service=TestHASingletonDeployer</parameter>
+ <parameter>start</parameter>
+ <parameter>
+ <bean class="javax.management.NotificationFilterSupport">
+ <install method="enableType">
+ <parameter>org.jboss.ha.singleton.started</parameter>
+ </install>
+ </bean>
+ </parameter>
+ </constructor>
+ </bean>
+ <!--/value>
+ <value-->
+ <bean class="org.jboss.system.ListenerServiceMBeanSupport$SubscriptionInfo">
+ <constructor>
+ <parameter>jboss.ha:service=TestHASingletonDeployer</parameter>
+ <parameter>stop</parameter>
+ <parameter>
+ <bean class="javax.management.NotificationFilterSupport">
+ <install method="enableType">
+ <parameter>org.jboss.ha.singleton.stopping</parameter>
+ </install>
+ </bean>
+ </parameter>
+ </constructor>
+ </bean>
+ <!--/value-->
+ </list>
+ </property>
+ </bean>
+
</deployment>
More information about the jboss-cvs-commits
mailing list