[jboss-cvs] JBossAS SVN: r106075 - in branches/Branch_No_Multicast: cluster and 7 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Jun 15 16:58:49 EDT 2010


Author: bstansberry at jboss.com
Date: 2010-06-15 16:58:49 -0400 (Tue, 15 Jun 2010)
New Revision: 106075

Added:
   branches/Branch_No_Multicast/cluster/src/resources/jboss-cache-manager.sar/META-INF/jboss-cache-configs-ec.xml
   branches/Branch_No_Multicast/cluster/src/resources/jboss-cache-manager.sar/META-INF/jboss-cache-manager-jboss-beans-ec.xml
   branches/Branch_No_Multicast/cluster/src/resources/jgroups/jgroups-channelfactory-stacks-ec.xml
Modified:
   branches/Branch_No_Multicast/build/build.xml
   branches/Branch_No_Multicast/cluster/build.xml
   branches/Branch_No_Multicast/testsuite/build.xml
   branches/Branch_No_Multicast/testsuite/imports/config/tests-clustering.xml
   branches/Branch_No_Multicast/testsuite/imports/server-config.xml
   branches/Branch_No_Multicast/testsuite/src/resources/cluster/hasingleton/electionpolicy/ha-electionpolicy-jboss-beans.xml
   branches/Branch_No_Multicast/testsuite/src/resources/cluster/partition/jboss-beans.xml
   branches/Branch_No_Multicast/testsuite/src/resources/cluster/partition/partition-restart-jboss-beans.xml
Log:
[JBPAPP-4482] Create a profile that will work in environments like cloud providers that do not support multicast.

Modified: branches/Branch_No_Multicast/build/build.xml
===================================================================
--- branches/Branch_No_Multicast/build/build.xml	2010-06-15 20:50:48 UTC (rev 106074)
+++ branches/Branch_No_Multicast/build/build.xml	2010-06-15 20:58:49 UTC (rev 106075)
@@ -321,6 +321,13 @@
     <property name="install.standard.deploy" value="${install.standard}/deploy"/>
     <property name="install.standard.deployers" value="${install.standard}/deployers"/>
     <property name="install.standard.conf" value="${install.standard}/conf"/>
+
+    <property name="install.ec2" value="${install.server}/cluster-ec2"/>
+    <property name="install.ec2.lib" value="${install.ec2}/lib"/>
+    <property name="install.ec2.deploy" value="${install.ec2}/deploy"/>
+    <property name="install.ec2.deployers" value="${install.ec2}/deployers"/>
+    <property name="install.ec2.conf" value="${install.ec2}/conf"/>
+    <property name="install.ec2.deploy.hasingleton" value="${install.ec2}/deploy-hasingleton"/>
     
     <!-- libs shared by the server configurations -->
     <property name="install.common" value="${install.root}/common"/>
@@ -761,6 +768,7 @@
     <antcall target="partition-community-ewp"/>
     <antcall target="partition-production"/>
     <antcall target="partition-production-ewp"/>
+    <antcall target="partition-ec2"/>
     <antcall target="jboss-all-client"/>
     <!--<antcall target="setup-ejb3-dist"/>-->
     <antcall target="apply_auth_patch"/>
@@ -872,6 +880,29 @@
 
   </target>
 
+  <target name="partition-ec2" depends="init" unless="build.ewp">
+
+    <!-- Build ec2 based on production -->
+    <!-- Copy server/production to server/ec2 -->
+    <copy todir="${install.ec2}">
+      <fileset dir="${install.production}">
+      	<exclude name="deploy/cluster/jgroups-channelfactory.sar/META-INF/jgroups-channelfactory-stacks.xml"/>
+         <exclude name="deploy/cluster/jboss-cache-manager.sar/**"/>
+      </fileset>
+    </copy>
+  	
+  	 <!-- Add in the modified-for-ec2 content -->
+  	 <copy file="${project.root}/cluster/src/resources/jgroups/jgroups-channelfactory-stacks-ec.xml" 
+    	tofile="${install.ec2.deploy}/cluster/jgroups-channelfactory.sar/META-INF/jgroups-channelfactory-stacks.xml"/>   
+  	 
+  	 <mkdir dir="${install.ec2.deploy}/cluster/jboss-cache-manager.sar/META-INF"/>   
+  	 <copy file="${project.root}/cluster/src/resources/jboss-cache-manager.sar/META-INF/jboss-cache-configs-ec.xml" 
+    	tofile="${install.ec2.deploy}/cluster/jboss-cache-manager.sar/META-INF/jboss-cache-configs.xml"/>  
+    <copy file="${project.root}/cluster/src/resources/jboss-cache-manager.sar/META-INF/jboss-cache-manager-jboss-beans-ec.xml" 
+    	tofile="${install.ec2.deploy}/cluster/jboss-cache-manager.sar/META-INF/jboss-cache-manager-jboss-beans.xml"/>
+
+  </target>
+
   <!-- Partition the default single configuration build into a minimal,
   default and all configs with a minimal set of jars in the root lib dir.
   -->

Modified: branches/Branch_No_Multicast/cluster/build.xml
===================================================================
--- branches/Branch_No_Multicast/cluster/build.xml	2010-06-15 20:50:48 UTC (rev 106074)
+++ branches/Branch_No_Multicast/cluster/build.xml	2010-06-15 20:58:49 UTC (rev 106075)
@@ -280,14 +280,17 @@
     <copy todir="${build.resources}/jgroups-channelfactory.sar/META-INF" filtering="yes">
       <fileset dir="${source.resources}/jgroups">
         <include name="**"/>
+        <exclude name="*ec.xml"/>
       </fileset>
     </copy>
-    
+  	 
+  	
     <!-- Build jboss-cache-manager.sar -->
     <mkdir dir="${build.resources}/jboss-cache-manager.sar"/>   
     <copy todir="${build.resources}/jboss-cache-manager.sar" filtering="yes">
       <fileset dir="${source.resources}/jboss-cache-manager.sar">
         <include name="**"/>
+        <exclude name="**/*ec.xml"/>
       </fileset>
     </copy>
 

Added: branches/Branch_No_Multicast/cluster/src/resources/jboss-cache-manager.sar/META-INF/jboss-cache-configs-ec.xml
===================================================================
--- branches/Branch_No_Multicast/cluster/src/resources/jboss-cache-manager.sar/META-INF/jboss-cache-configs-ec.xml	                        (rev 0)
+++ branches/Branch_No_Multicast/cluster/src/resources/jboss-cache-manager.sar/META-INF/jboss-cache-configs-ec.xml	2010-06-15 20:58:49 UTC (rev 106075)
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<registry:cache-configs xmlns="urn:jboss:jbosscache-core:config:3.0" 
+                        xmlns:registry="urn:jboss:jbosscache-core:cache-repo:3.0">
+
+    <!-- 
+       JBoss Cache configurations using the standard JBC 3.x config format
+       can be added to this file, and will usable by the AS's CacheManager
+       if the "configResource" property in the jboss-cache-manager-jboss-beans.xml
+       file's "CacheConfigurationRegistry" bean is uncommented. (It is
+       commented out by default.)
+       However, use of the microcontainer config format used in this
+       sar's jboss-cache-manager-jboss-beans.xml file is recommended.
+    -->
+    
+    <!-- An example config; not intended for use; just to illustrate JBC 3's
+         config format and to comply with schema requirement for a cache-config
+         element. Removing this example is recommended if a real config is added.
+    --> 
+    <registry:cache-config name="example">
+
+       <locking isolationLevel="REPEATABLE_READ" lockAcquisitionTimeout="15000" nodeLockingScheme="pessimistic"/>
+       <serialization useRegionBasedMarshalling="true"/>
+       <startup regionsInactiveOnStartup="true"/>
+       <clustering clusterName="${jboss.partition.name:DefaultPartition}-example" mode="r">
+         <stateRetrieval fetchInMemoryState="true" timeout="60000"/>
+         <jgroupsConfig multiplexerStack="${jboss.default.jgroups.stack:tcp}"/>
+         <sync replTimeout="175000"/>
+       </clustering>
+       <eviction wakeUpInterval="5000">
+          <default algorithmClass="org.jboss.cache.eviction.LRUAlgorithm">
+             <property name="maxNodes" value="5000" />
+             <property name="timeToLive" value="1000" />
+          </default>
+       </eviction>
+    </registry:cache-config>
+    
+    
+</registry:cache-configs>


Property changes on: branches/Branch_No_Multicast/cluster/src/resources/jboss-cache-manager.sar/META-INF/jboss-cache-configs-ec.xml
___________________________________________________________________
Name: svn:keywords
   + Id Revision

Added: branches/Branch_No_Multicast/cluster/src/resources/jboss-cache-manager.sar/META-INF/jboss-cache-manager-jboss-beans-ec.xml
===================================================================
--- branches/Branch_No_Multicast/cluster/src/resources/jboss-cache-manager.sar/META-INF/jboss-cache-manager-jboss-beans-ec.xml	                        (rev 0)
+++ branches/Branch_No_Multicast/cluster/src/resources/jboss-cache-manager.sar/META-INF/jboss-cache-manager-jboss-beans-ec.xml	2010-06-15 20:58:49 UTC (rev 106075)
@@ -0,0 +1,1494 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <!-- Factory/registry for JBoss Cache and PojoCache instances used in the AS -->
+   <bean name="CacheManager" class="org.jboss.ha.cachemanager.CacheManager">
+
+      <annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss.cache:service=CacheManager",                                          exposedInterface=org.jboss.ha.cachemanager.CacheManagerMBean.class, registerDirectly=true)</annotation>
+
+      <!-- This doesn't seem to work, so the service binds itself for now
+      <annotation>@org.jboss.aop.microcontainer.aspects.jndi.JndiBinding(name="java:CacheManager")</annotation>
+      -->
+      <property name="jndiName">java:CacheManager</property>
+      
+      <property name="configurationRegistry"><inject bean="CacheConfigurationRegistry"/></property>
+      <property name="channelFactory"><inject bean="JChannelFactory"/></property>
+      
+      <!-- Aliases for cache names. Allows caches to be shared across 
+           services that may expect different cache config names. -->
+      <property name="configAliases">
+         <map keyClass="java.lang.String" valueClass="java.lang.String">
+            <!-- Use the HAPartition cache for ClusteredSSO caching -->
+            <entry>
+               <key>clustered-sso</key>
+               <value>ha-partition</value>
+            </entry>
+            <!-- Handle the legacy name for the EJB3 SFSB cache -->
+            <entry>
+               <key>jboss.cache:service=EJB3SFSBClusteredCache</key>
+               <value>sfsb-cache</value>
+            </entry>
+            <!-- Handle the legacy name for the EJB3 Entity cache -->
+            <entry>
+               <key>jboss.cache:service=EJB3EntityTreeCache</key>
+               <value>mvcc-shared</value>
+            </entry>
+         </map>
+      </property>
+      
+      <!-- Start these caches as part of the start of this CacheManager
+      <property name="eagerStartCaches">
+         <set>
+            <value>ha-partition</value>
+         </set>
+      </property>
+      -->
+      
+   </bean>
+   
+   <!-- 
+     | Registry of named JBoss Cache configurations. Users of the CacheManager
+     | request a cache with a particular configuration by providing the name
+     | of one of these configurations.
+   -->
+   <bean name="CacheConfigurationRegistry" class="org.jboss.ha.cachemanager.DependencyInjectedConfigurationRegistry">
+   
+      <!-- If users wish to add configs using a more familiar JBC config format
+           they can add them to a cache-configs.xml file specified by this property.
+           However, use of the microcontainer format used below is recommended.
+      <property name="configResource">META-INF/jboss-cache-configs.xml</property>      
+      -->
+      
+      <!-- The configurations. A Map<String name, Configuration config> -->
+      <property name="newConfigurations">
+        <map keyClass="java.lang.String" valueClass="org.jboss.cache.config.Configuration">
+   
+   <!-- The standard configurations follow.  You can add your own and/or edit these. -->   
+      
+   <!-- Standard cache used for web sessions -->
+   <entry><key>standard-session-cache</key>
+   <value>      
+      <bean name="StandardSessionCacheConfig" class="org.jboss.cache.config.Configuration">
+         
+         <!-- Provides batching functionality for caches that don't want to interact with regular JTA Transactions -->
+         <property name="transactionManagerLookupClass">org.jboss.cache.transaction.BatchModeTransactionManagerLookup</property>
+               
+         <!-- Name of cluster. Needs to be the same for all members -->
+         <property name="clusterName">${jboss.partition.name:DefaultPartition}-SessionCache</property>
+         <!-- Use a UDP (multicast) based stack. Need JGroups flow control (FC)
+              because we are using asynchronous replication. -->
+         <property name="multiplexerStack">${jboss.default.jgroups.stack:tcp}</property>
+         <property name="fetchInMemoryState">true</property>
+         
+         <property name="nodeLockingScheme">PESSIMISTIC</property>
+         <property name="isolationLevel">REPEATABLE_READ</property>
+         <property name="useLockStriping">false</property>
+         <property name="cacheMode">REPL_ASYNC</property>
+      
+         <!-- Number of milliseconds to wait until all responses for a
+              synchronous call have been received. Make this longer 
+              than lockAcquisitionTimeout.-->
+         <property name="syncReplTimeout">17500</property>
+         <!-- Max number of milliseconds to wait for a lock acquisition -->
+         <property name="lockAcquisitionTimeout">15000</property>
+         <!-- The max amount of time (in milliseconds) we wait until the
+          state (ie. the contents of the cache) are retrieved from
+          existing members at startup. -->
+         <property name="stateRetrievalTimeout">60000</property>
+      
+         <!-- Not needed for a web session cache that doesn't use FIELD -->
+         <property name="useRegionBasedMarshalling">false</property>
+         <!-- Must match the value of "useRegionBasedMarshalling" -->
+         <property name="inactiveOnStartup">false</property>
+         
+         <!-- Disable asynchronous RPC marshalling/sending -->
+         <property name="serializationExecutorPoolSize">0</property>        
+         <!-- We have no asynchronous notification listeners -->
+         <property name="listenerAsyncPoolSize">0</property>
+           
+         <property name="exposeManagementStatistics">true</property>
+      
+         <property name="buddyReplicationConfig">
+            <bean class="org.jboss.cache.config.BuddyReplicationConfig">
+               
+               <!--  Just set to true to turn on buddy replication -->
+               <property name="enabled">false</property>
+               
+               <!-- A way to specify a preferred replication group.  We try
+                    and pick a buddy who shares the same pool name (falling 
+                    back to other buddies if not available). -->
+               <property name="buddyPoolName">default</property>
+               
+               <property name="buddyCommunicationTimeout">17500</property>
+               
+               <!-- Do not change these -->
+               <property name="autoDataGravitation">false</property>
+               <property name="dataGravitationRemoveOnFind">true</property>
+               <property name="dataGravitationSearchBackupTrees">true</property>
+               
+               <property name="buddyLocatorConfig">
+                  <bean class="org.jboss.cache.buddyreplication.NextMemberBuddyLocatorConfig">
+                     <!-- The number of backup copies we maintain -->
+                     <property name="numBuddies">1</property>
+                     <!-- Means that each node will *try* to select a buddy on 
+                          a different physical host. If not able to do so 
+                          though, it will fall back to colocated nodes. -->
+                     <property name="ignoreColocatedBuddies">true</property>
+                   </bean>
+               </property>
+            </bean>
+         </property>
+         <property name="cacheLoaderConfig">
+            <bean class="org.jboss.cache.config.CacheLoaderConfig">
+                   <!-- Do not change these -->
+                   <property name="passivation">true</property>
+                   <property name="shared">false</property>
+                   
+                   <property name="individualCacheLoaderConfigs">
+                     <list>
+                        <bean class="org.jboss.cache.loader.FileCacheLoaderConfig">
+                           <!-- Where passivated sessions are stored -->
+                           <property name="location">${jboss.server.data.dir}${/}session</property>
+                           <!-- Do not change these -->
+                           <property name="async">false</property>
+                           <property name="fetchPersistentState">true</property>
+                           <property name="purgeOnStartup">true</property>
+                           <property name="ignoreModifications">false</property>
+                           <property name="checkCharacterPortability">false</property>
+                        </bean>
+                     </list>
+                   </property>
+            </bean>
+         </property>
+      </bean>      
+   </value>
+   </entry>
+   
+   <!-- Appropriate for web sessions with FIELD granularity -->
+   <entry><key>field-granularity-session-cache</key>
+   <value>
+      
+      <bean name="FieldSessionCacheConfig" class="org.jboss.cache.config.Configuration">
+      
+         <!-- Provides batching functionality for caches that don't want to interact with regular JTA Transactions -->
+         <property name="transactionManagerLookupClass">org.jboss.cache.transaction.BatchModeTransactionManagerLookup</property>
+               
+         <!-- Name of cluster. Needs to be the same for all members -->
+         <property name="clusterName">${jboss.partition.name:DefaultPartition}-FieldSessionCache</property>
+         <!-- Use a UDP (multicast) based stack. Need JGroups flow control (FC)
+              because we are using asynchronous replication. -->
+         <property name="multiplexerStack">${jboss.default.jgroups.stack:tcp}</property>
+         <property name="fetchInMemoryState">true</property>      
+      
+         <property name="nodeLockingScheme">PESSIMISTIC</property>
+         <property name="isolationLevel">REPEATABLE_READ</property>
+         <property name="useLockStriping">false</property>
+         <property name="cacheMode">REPL_ASYNC</property>
+      
+         <property name="syncReplTimeout">17500</property>
+         <property name="lockAcquisitionTimeout">15000</property>
+         <property name="stateRetrievalTimeout">60000</property>
+          
+         <!-- Field granularity requires region-based marshalling -->
+         <property name="useRegionBasedMarshalling">true</property>
+         <!-- Must match the value of "useRegionBasedMarshalling" -->
+         <property name="inactiveOnStartup">true</property>
+         
+         <!-- Disable asynchronous RPC marshalling/sending -->
+         <property name="serializationExecutorPoolSize">0</property>        
+         <!-- We have no asynchronous notification listeners -->
+         <property name="listenerAsyncPoolSize">0</property>
+           
+         <property name="exposeManagementStatistics">true</property>
+      
+         <property name="buddyReplicationConfig">
+            <bean class="org.jboss.cache.config.BuddyReplicationConfig">
+               
+               <!--  Just set to true to turn on buddy replication -->
+               <property name="enabled">false</property>
+               <!-- A way to specify a preferred replication group.  We try
+                    and pick a buddy who shares the same pool name (falling 
+                    back to other buddies if not available). -->
+               <property name="buddyPoolName">default</property>
+               <property name="buddyCommunicationTimeout">17500</property>
+
+               <!-- Do not change these -->
+               <property name="autoDataGravitation">false</property>
+               <property name="dataGravitationRemoveOnFind">true</property>
+               <property name="dataGravitationSearchBackupTrees">true</property>
+               
+               <property name="buddyLocatorConfig">
+                  <bean class="org.jboss.cache.buddyreplication.NextMemberBuddyLocatorConfig">
+                     <!-- The number of backup nodes we maintain -->
+                     <property name="numBuddies">1</property>
+                     <!-- Means that each node will *try* to select a buddy on 
+                          a different physical host. If not able to do so 
+                          though, it will fall back to colocated nodes. -->
+                     <property name="ignoreColocatedBuddies">true</property>
+                   </bean>
+               </property>
+            </bean>
+         </property>
+         <property name="cacheLoaderConfig">
+            <bean class="org.jboss.cache.config.CacheLoaderConfig">
+                   <!-- Do not change these -->
+                   <property name="passivation">true</property>
+                   <property name="shared">false</property>
+                   
+                   <property name="individualCacheLoaderConfigs">
+                     <list>
+                        <bean class="org.jboss.cache.loader.FileCacheLoaderConfig">
+                           <!-- Where passivated sessions are stored -->
+                           <property name="location">${jboss.server.data.dir}${/}field-session</property>
+                           <!-- Do not change these -->
+                           <property name="async">false</property>
+                           <property name="fetchPersistentState">true</property>
+                           <property name="purgeOnStartup">true</property>
+                           <property name="ignoreModifications">false</property>
+                           <property name="checkCharacterPortability">false</property>
+                        </bean>
+                     </list>
+                   </property>
+            </bean>
+         </property>
+
+      </bean>
+   </value>
+   </entry>  
+      
+   <!-- Standard cache used for EJB3 SFSB caching -->
+   <entry><key>sfsb-cache</key>
+   <value>      
+      <bean name="StandardSFSBCacheConfig" class="org.jboss.cache.config.Configuration">
+
+         <!--  No transaction manager lookup -->
+               
+         <!-- Name of cluster. Needs to be the same for all members -->
+         <property name="clusterName">${jboss.partition.name:DefaultPartition}-SFSBCache</property>
+         <!-- Use a UDP (multicast) based stack. Need JGroups flow control (FC)
+              because we are using asynchronous replication. -->
+         <property name="multiplexerStack">${jboss.default.jgroups.stack:tcp}</property>
+         <property name="fetchInMemoryState">true</property>
+         
+         <property name="nodeLockingScheme">PESSIMISTIC</property>
+         <property name="isolationLevel">REPEATABLE_READ</property>
+         <property name="useLockStriping">false</property>
+         <property name="cacheMode">REPL_ASYNC</property>
+      
+         <!-- Number of milliseconds to wait until all responses for a
+              synchronous call have been received. Make this longer 
+              than lockAcquisitionTimeout.-->
+         <property name="syncReplTimeout">17500</property>
+         <!-- Max number of milliseconds to wait for a lock acquisition -->
+         <property name="lockAcquisitionTimeout">15000</property>
+         <!-- The max amount of time (in milliseconds) we wait until the
+          state (ie. the contents of the cache) are retrieved from
+          existing members at startup. -->
+         <property name="stateRetrievalTimeout">60000</property>
+      
+         <!--
+          SFSBs use region-based marshalling to provide for partial state
+          transfer during deployment/undeployment.
+         -->
+         <property name="useRegionBasedMarshalling">false</property>
+         <!-- Must match the value of "useRegionBasedMarshalling" -->
+         <property name="inactiveOnStartup">false</property>
+         
+         <!-- Disable asynchronous RPC marshalling/sending -->
+         <property name="serializationExecutorPoolSize">0</property>        
+         <!-- We have no asynchronous notification listeners -->
+         <property name="listenerAsyncPoolSize">0</property>
+           
+         <property name="exposeManagementStatistics">true</property>
+      
+         <property name="buddyReplicationConfig">
+            <bean class="org.jboss.cache.config.BuddyReplicationConfig">
+               
+               <!--  Just set to true to turn on buddy replication -->
+               <property name="enabled">false</property>
+               
+               <!-- A way to specify a preferred replication group.  We try
+                    and pick a buddy who shares the same pool name (falling 
+                    back to other buddies if not available). -->
+               <property name="buddyPoolName">default</property>
+               
+               <property name="buddyCommunicationTimeout">17500</property>
+               
+               <!-- Do not change these -->
+               <property name="autoDataGravitation">false</property>
+               <property name="dataGravitationRemoveOnFind">true</property>
+               <property name="dataGravitationSearchBackupTrees">true</property>
+               
+               <property name="buddyLocatorConfig">
+                  <bean class="org.jboss.cache.buddyreplication.NextMemberBuddyLocatorConfig">
+                     <!-- The number of backup nodes we maintain -->
+                     <property name="numBuddies">1</property>
+                     <!-- Means that each node will *try* to select a buddy on 
+                          a different physical host. If not able to do so 
+                          though, it will fall back to colocated nodes. -->
+                     <property name="ignoreColocatedBuddies">true</property>
+                   </bean>
+               </property>
+            </bean>
+         </property>
+         <property name="cacheLoaderConfig">
+            <bean class="org.jboss.cache.config.CacheLoaderConfig">
+                   <!-- Do not change these -->
+                   <property name="passivation">true</property>
+                   <property name="shared">false</property>
+                   
+                   <property name="individualCacheLoaderConfigs">
+                     <list>
+                        <bean class="org.jboss.cache.loader.FileCacheLoaderConfig">
+                           <!-- Where passivated sessions are stored -->
+                           <property name="location">${jboss.server.data.dir}${/}sfsb</property>
+                           <!-- Do not change these -->
+                           <property name="async">false</property>
+                           <property name="fetchPersistentState">true</property>
+                           <property name="purgeOnStartup">true</property>
+                           <property name="ignoreModifications">false</property>
+                           <property name="checkCharacterPortability">false</property>
+                        </bean>
+                     </list>
+                   </property>
+            </bean>
+         </property>
+        
+         <!-- EJBs use JBoss Cache eviction -->
+         <property name="evictionConfig">
+             <bean class="org.jboss.cache.config.EvictionConfig">
+               <property name="wakeupInterval">5000</property>
+               <!--  Overall default -->
+               <property name="defaultEvictionRegionConfig">
+                  <bean class="org.jboss.cache.config.EvictionRegionConfig">
+                     <property name="regionName">/</property>
+                     <property name="evictionAlgorithmConfig">
+                        <bean class="org.jboss.cache.eviction.NullEvictionAlgorithmConfig"/>
+                     </property>
+                  </bean>
+               </property>
+               <!-- EJB3 integration code will programatically create
+                    other regions as beans are deployed -->
+            </bean>
+         </property>
+      </bean>      
+   </value>
+   </entry>
+   
+   <!-- 
+      Appropriate for the HAPartition-based services, e.g. DistributedState, 
+      HA-JNDI. Also valid for use by the JBossWeb ClusteredSingleSignOn valve.
+    -->
+   <entry><key>ha-partition</key>
+   <value>
+      
+      <bean name="HAPartitionCache" class="org.jboss.cache.config.Configuration">
+
+         <!-- Provides batching functionality for caches that don't want to interact with regular JTA Transactions -->
+         <property name="transactionManagerLookupClass">org.jboss.cache.transaction.BatchModeTransactionManagerLookup</property>
+               
+         <property name="clusterName">${jboss.partition.name:DefaultPartition}-HAPartitionCache</property>
+         <property name="multiplexerStack">${jboss.default.jgroups.stack:tcp}</property>
+         <property name="fetchInMemoryState">true</property>          
+      
+         <property name="nodeLockingScheme">PESSIMISTIC</property>
+         <property name="isolationLevel">REPEATABLE_READ</property>
+         <property name="useLockStriping">false</property>
+         <property name="cacheModeString">REPL_SYNC</property>
+      
+         <property name="syncReplTimeout">17500</property>
+         <property name="lockAcquisitionTimeout">15000</property>
+         <property name="stateRetrievalTimeout">60000</property>
+      
+         <property name="useRegionBasedMarshalling">false</property>
+         <property name="inactiveOnStartup">false</property>
+         
+         <!-- Disable asynchronous RPC marshalling/sending -->
+         <property name="serializationExecutorPoolSize">0</property>        
+         <!-- We have no asynchronous notification listeners -->
+         <property name="listenerAsyncPoolSize">0</property>
+           
+         <property name="exposeManagementStatistics">true</property>
+      </bean>
+   </value>
+   </entry>
+
+    <!-- 
+      Following are JBoss Cache configurations suitable for different 
+      Hibernate 2nd Level Cache uses (e.g. entities vs. queries).
+      
+      In all cases, TransactionManager configuration not required.
+      Hibernate will plug in its own transaction manager integration. 
+    -->
+    
+   <!-- A config appropriate for entity/collection caching that uses MVCC locking -->
+   <entry><key>mvcc-entity</key>
+   <value>      
+      <bean name="MVCCEntityCache" class="org.jboss.cache.config.Configuration">
+
+         <!-- Node locking scheme -->
+         <property name="nodeLockingScheme">MVCC</property>
+         <!-- READ_COMMITTED is as strong as necessary for most 
+              2nd Level Cache use cases. -->
+         <property name="isolationLevel">READ_COMMITTED</property>
+         <property name="useLockStriping">false</property>
+
+         <!-- Mode of communication with peer caches.        
+              INVALIDATION_SYNC is highly recommended as the mode for use
+              with entity and collection caches.     -->
+         <property name="cacheMode">INVALIDATION_SYNC</property> 
+
+         <!-- Name of cluster. Needs to be the same for all members -->
+         <property name="clusterName">${jboss.partition.name:DefaultPartition}-mvcc-entity</property>        
+         <!-- Use a UDP (multicast) based stack. A udp-sync stack might be
+              slightly better (no JGroups FC) but we stick with udp to
+              help ensure this cache and others like timestamps-cache
+              that require FC can use the same underlying JGroups resources. -->
+         <property name="multiplexerStack">${jboss.default.jgroups.stack:tcp}</property>
+         <!-- Whether or not to fetch state on joining a cluster. -->
+         <property name="fetchInMemoryState">false</property>
+
+         <!-- The max amount of time (in milliseconds) we wait until the
+           state (ie. the contents of the cache) are retrieved from
+           existing members at startup. Ignored if FetchInMemoryState=false. -->
+         <property name="stateRetrievalTimeout">60000</property>
+
+         <!-- Number of milliseconds to wait until all responses for a
+               synchronous call have been received. -->
+         <property name="syncReplTimeout">17500</property>
+
+         <!-- Max number of milliseconds to wait for a lock acquisition -->
+         <property name="lockAcquisitionTimeout">15000</property>
+
+         <!-- Hibernate 2LC can replicate custom types, so we use marshalling -->
+         <property name="useRegionBasedMarshalling">true</property>
+         <!-- Must match the value of "useRegionBasedMarshalling" -->
+         <property name="inactiveOnStartup">true</property>
+
+         <!-- Disable asynchronous RPC marshalling/sending -->
+         <property name="serializationExecutorPoolSize">0</property>        
+         <!-- We have no asynchronous notification listeners -->
+         <property name="listenerAsyncPoolSize">0</property>
+         
+         <property name="evictionConfig">
+             <bean class="org.jboss.cache.config.EvictionConfig">
+               <property name="wakeupInterval">5000</property>
+               <!--  Overall default -->
+               <property name="defaultEvictionRegionConfig">
+                  <bean class="org.jboss.cache.config.EvictionRegionConfig">
+                     <property name="regionName">/</property>
+                     <property name="evictionAlgorithmConfig">
+                        <bean class="org.jboss.cache.eviction.LRUAlgorithmConfig">
+                           <!-- Evict LRU node once we have more than this number of nodes -->
+                           <property name="maxNodes">10000</property>
+                           <!-- And, evict any node that hasn't been accessed in this many seconds -->
+                           <property name="timeToLiveSeconds">1000</property>
+                           <!-- Don't evict a node that's been accessed within this many seconds. 
+                                Set this to a value greater than your max expected transaction length. -->
+                           <property name="minTimeToLiveSeconds">120</property>
+                        </bean>
+                     </property>
+                  </bean>
+               </property>
+               <property name="evictionRegionConfigs">
+                  <list>
+                     <!--  Don't ever evict modification timestamps -->
+                     <bean class="org.jboss.cache.config.EvictionRegionConfig">
+                        <property name="regionName">/TS</property>
+                        <property name="evictionAlgorithmConfig">
+                           <bean class="org.jboss.cache.eviction.NullEvictionAlgorithmConfig"/>
+                        </property>
+                     </bean>
+                  </list>
+               </property>
+            </bean>
+         </property>
+      </bean>
+   </value>
+   </entry>
+    
+   <!-- A config appropriate for entity/collection caching that uses optimistic locking. -->
+   <entry><key>optimistic-entity</key>
+   <value>      
+      <bean name="OptimisticEntityCache" class="org.jboss.cache.config.Configuration">
+
+         <!-- Node locking scheme -->
+         <property name="nodeLockingScheme">OPTIMISTIC</property>
+
+         <!-- Mode of communication with peer caches.        
+              INVALIDATION_SYNC is highly recommended as the mode for use
+              with entity and collection caches.     -->
+         <property name="cacheMode">INVALIDATION_SYNC</property> 
+         <property name="useLockStriping">false</property>
+
+         <!-- Name of cluster. Needs to be the same for all members -->
+         <property name="clusterName">${jboss.partition.name:DefaultPartition}-opt-entity</property>        
+         <!-- Use a UDP (multicast) based stack. A udp-sync stack might be
+              slightly better (no JGroups FC) but we stick with udp to
+              help ensure this cache and others like timestamps-cache
+              that require FC can use the same underlying JGroups resources. -->
+         <property name="multiplexerStack">${jboss.default.jgroups.stack:tcp}</property>
+         <!-- Whether or not to fetch state on joining a cluster. -->
+         <property name="fetchInMemoryState">false</property>
+
+         <!-- The max amount of time (in milliseconds) we wait until the
+           state (ie. the contents of the cache) are retrieved from
+           existing members at startup. Ignored if FetchInMemoryState=false. -->
+         <property name="stateRetrievalTimeout">60000</property>
+
+         <!-- Number of milliseconds to wait until all responses for a
+               synchronous call have been received. -->
+         <property name="syncReplTimeout">17500</property>
+
+         <!-- Max number of milliseconds to wait for a lock acquisition -->
+         <property name="lockAcquisitionTimeout">15000</property>
+
+         <!-- Hibernate 2LC can replicate custom types, so we use marshalling -->
+         <property name="useRegionBasedMarshalling">true</property>
+         <!-- Must match the value of "useRegionBasedMarshalling" -->
+         <property name="inactiveOnStartup">true</property>
+
+         <!-- Disable asynchronous RPC marshalling/sending -->
+         <property name="serializationExecutorPoolSize">0</property>        
+         <!-- We have no asynchronous notification listeners -->
+         <property name="listenerAsyncPoolSize">0</property>
+         
+         <property name="evictionConfig">
+             <bean class="org.jboss.cache.config.EvictionConfig">
+               <property name="wakeupInterval">5000</property>
+               <!--  Overall default -->
+               <property name="defaultEvictionRegionConfig">
+                  <bean class="org.jboss.cache.config.EvictionRegionConfig">
+                     <property name="regionName">/</property>
+                     <property name="evictionAlgorithmConfig">
+                        <bean class="org.jboss.cache.eviction.LRUAlgorithmConfig">
+                           <!-- Evict LRU node once we have more than this number of nodes -->
+                           <property name="maxNodes">10000</property>
+                           <!-- And, evict any node that hasn't been accessed in this many seconds -->
+                           <property name="timeToLiveSeconds">1000</property>
+                           <!-- Don't evict a node that's been accessed within this many seconds. 
+                                Set this to a value greater than your max expected transaction length. -->
+                           <property name="minTimeToLiveSeconds">120</property>
+                        </bean>
+                     </property>
+                  </bean>
+               </property>
+               <property name="evictionRegionConfigs">
+                  <list>
+                     <!--  Don't ever evict modification timestamps -->
+                     <bean class="org.jboss.cache.config.EvictionRegionConfig">
+                        <property name="regionName">/TS</property>
+                        <property name="evictionAlgorithmConfig">
+                           <bean class="org.jboss.cache.eviction.NullEvictionAlgorithmConfig"/>
+                        </property>
+                     </bean>
+                  </list>
+               </property>
+            </bean>
+         </property>
+      </bean>
+   </value>
+   </entry>
+    
+   <!-- A config appropriate for entity/collection caching that uses pessimistic locking -->
+   <entry><key>pessimistic-entity</key>
+   <value>      
+      <bean name="PessimisticEntityCache" class="org.jboss.cache.config.Configuration">
+
+         <!-- Node locking scheme -->
+         <property name="nodeLockingScheme">PESSIMISTIC</property>
+         <!-- READ_COMMITTED is as strong as necessary for most 
+              2nd Level Cache use cases. -->
+         <property name="isolationLevel">READ_COMMITTED</property>
+         <property name="useLockStriping">false</property>
+
+         <!-- Mode of communication with peer caches.        
+              INVALIDATION_SYNC is highly recommended as the mode for use
+              with entity and collection caches.     -->
+         <property name="cacheMode">INVALIDATION_SYNC</property> 
+
+         <!-- Name of cluster. Needs to be the same for all members -->
+         <property name="clusterName">${jboss.partition.name:DefaultPartition}-pess-entity</property>        
+         <!-- Use a UDP (multicast) based stack. A udp-sync stack might be
+              slightly better (no JGroups FC) but we stick with udp to
+              help ensure this cache and others like timestamps-cache
+              that require FC can use the same underlying JGroups resources. -->
+         <property name="multiplexerStack">${jboss.default.jgroups.stack:tcp}</property>
+         <!-- Whether or not to fetch state on joining a cluster. -->
+         <property name="fetchInMemoryState">false</property>
+
+         <!-- The max amount of time (in milliseconds) we wait until the
+           state (ie. the contents of the cache) are retrieved from
+           existing members at startup. Ignored if FetchInMemoryState=false. -->
+         <property name="stateRetrievalTimeout">60000</property>
+
+         <!-- Number of milliseconds to wait until all responses for a
+               synchronous call have been received. -->
+         <property name="syncReplTimeout">17500</property>
+
+         <!-- Max number of milliseconds to wait for a lock acquisition -->
+         <property name="lockAcquisitionTimeout">15000</property>
+
+         <!-- Hibernate 2LC can replicate custom types, so we use marshalling -->
+         <property name="useRegionBasedMarshalling">true</property>
+         <!-- Must match the value of "useRegionBasedMarshalling" -->
+         <property name="inactiveOnStartup">true</property>
+
+         <!-- Disable asynchronous RPC marshalling/sending -->
+         <property name="serializationExecutorPoolSize">0</property>        
+         <!-- We have no asynchronous notification listeners -->
+         <property name="listenerAsyncPoolSize">0</property>
+         
+         <property name="evictionConfig">
+             <bean class="org.jboss.cache.config.EvictionConfig">
+               <property name="wakeupInterval">5000</property>
+               <!--  Overall default -->
+               <property name="defaultEvictionRegionConfig">
+                  <bean class="org.jboss.cache.config.EvictionRegionConfig">
+                     <property name="regionName">/</property>
+                     <property name="evictionAlgorithmConfig">
+                        <bean class="org.jboss.cache.eviction.LRUAlgorithmConfig">
+                           <!-- Evict LRU node once we have more than this number of nodes -->
+                           <property name="maxNodes">10000</property>
+                           <!-- And, evict any node that hasn't been accessed in this many seconds -->
+                           <property name="timeToLiveSeconds">1000</property>
+                           <!-- Don't evict a node that's been accessed within this many seconds. 
+                                Set this to a value greater than your max expected transaction length. -->
+                           <property name="minTimeToLiveSeconds">120</property>
+                        </bean>
+                     </property>
+                  </bean>
+               </property>
+               <property name="evictionRegionConfigs">
+                  <list>
+                     <!--  Don't ever evict modification timestamps -->
+                     <bean class="org.jboss.cache.config.EvictionRegionConfig">
+                        <property name="regionName">/TS</property>
+                        <property name="evictionAlgorithmConfig">
+                           <bean class="org.jboss.cache.eviction.NullEvictionAlgorithmConfig"/>
+                        </property>
+                     </bean>
+                  </list>
+               </property>
+            </bean>
+         </property>
+      </bean>
+   </value>
+   </entry>
+    
+   <!-- Same as "mvcc-entity" but here we use REPEATABLE_READ
+        instead of READ_COMMITTED. REPEATABLE_READ is only useful if the 
+        application evicts/clears entities from the Hibernate Session and 
+        then expects to repeatably re-read them in the same transaction.
+        Otherwise, the Session's internal cache provides a repeatable-read 
+        semantic. Before choosing this config, carefully read the docs
+        and make sure you really need REPEATABLE_READ. -->
+   <entry><key>mvcc-entity-repeatable</key>
+   <value>      
+      <bean name="MVCCEntityRepeatableCache" class="org.jboss.cache.config.Configuration">
+
+         <!-- Node locking scheme -->
+         <property name="nodeLockingScheme">MVCC</property>
+         <!-- Here we  use REPEATABLE_READ. -->
+         <property name="isolationLevel">READ_COMMITTED</property>
+         <property name="useLockStriping">false</property>
+
+         <!-- Mode of communication with peer caches.        
+              INVALIDATION_SYNC is highly recommended as the mode for use
+              with entity and collection caches.     -->
+         <property name="cacheMode">INVALIDATION_SYNC</property> 
+
+         <!-- Name of cluster. Needs to be the same for all members -->
+         <property name="clusterName">${jboss.partition.name:DefaultPartition}-mvcc-entity-rr</property>        
+         <!-- Use a UDP (multicast) based stack. A udp-sync stack might be
+              slightly better (no JGroups FC) but we stick with udp to
+              help ensure this cache and others like timestamps-cache
+              that require FC can use the same underlying JGroups resources. -->
+         <property name="multiplexerStack">${jboss.default.jgroups.stack:tcp}</property>
+         <!-- Whether or not to fetch state on joining a cluster. -->
+         <property name="fetchInMemoryState">false</property>
+
+         <!-- The max amount of time (in milliseconds) we wait until the
+           state (ie. the contents of the cache) are retrieved from
+           existing members at startup. Ignored if FetchInMemoryState=false. -->
+         <property name="stateRetrievalTimeout">60000</property>
+
+         <!-- Number of milliseconds to wait until all responses for a
+               synchronous call have been received. -->
+         <property name="syncReplTimeout">17500</property>
+
+         <!-- Max number of milliseconds to wait for a lock acquisition -->
+         <property name="lockAcquisitionTimeout">15000</property>
+
+         <!-- Hibernate 2LC can replicate custom types, so we use marshalling -->
+         <property name="useRegionBasedMarshalling">true</property>
+         <!-- Must match the value of "useRegionBasedMarshalling" -->
+         <property name="inactiveOnStartup">true</property>
+
+         <!-- Disable asynchronous RPC marshalling/sending -->
+         <property name="serializationExecutorPoolSize">0</property>        
+         <!-- We have no asynchronous notification listeners -->
+         <property name="listenerAsyncPoolSize">0</property>
+         
+         <property name="evictionConfig">
+             <bean class="org.jboss.cache.config.EvictionConfig">
+               <property name="wakeupInterval">5000</property>
+               <!--  Overall default -->
+               <property name="defaultEvictionRegionConfig">
+                  <bean class="org.jboss.cache.config.EvictionRegionConfig">
+                     <property name="regionName">/</property>
+                     <property name="evictionAlgorithmConfig">
+                        <bean class="org.jboss.cache.eviction.LRUAlgorithmConfig">
+                           <!-- Evict LRU node once we have more than this number of nodes -->
+                           <property name="maxNodes">10000</property>
+                           <!-- And, evict any node that hasn't been accessed in this many seconds -->
+                           <property name="timeToLiveSeconds">1000</property>
+                           <!-- Don't evict a node that's been accessed within this many seconds. 
+                                Set this to a value greater than your max expected transaction length. -->
+                           <property name="minTimeToLiveSeconds">120</property>
+                        </bean>
+                     </property>
+                  </bean>
+               </property>
+               <property name="evictionRegionConfigs">
+                  <list>
+                     <!--  Don't ever evict modification timestamps -->
+                     <bean class="org.jboss.cache.config.EvictionRegionConfig">
+                        <property name="regionName">/TS</property>
+                        <property name="evictionAlgorithmConfig">
+                           <bean class="org.jboss.cache.eviction.NullEvictionAlgorithmConfig"/>
+                        </property>
+                     </bean>
+                  </list>
+               </property>
+            </bean>
+         </property>
+      </bean>
+   </value>
+   </entry>
+   
+   <!-- Same as "pessimistic-entity" but here we use REPEATABLE_READ
+        instead of READ_COMMITTED. REPEATABLE_READ is only useful if the 
+        application evicts/clears entities from the Hibernate Session and 
+        then expects to repeatably re-read them in the same transaction.
+        Otherwise, the Session's internal cache provides a repeatable-read 
+        semantic. Before choosing this config, carefully read the docs
+        and make sure you really need REPEATABLE_READ.
+   -->
+   <entry><key>pessimistic-entity-repeatable</key>
+   <value>      
+      <bean name="PessimisticEntityRepeatableCache" class="org.jboss.cache.config.Configuration">
+
+         <!-- Node locking scheme -->
+         <property name="nodeLockingScheme">PESSIMISTIC</property>
+         <property name="isolationLevel">REPEATABLE_READ</property>
+         <property name="useLockStriping">false</property>
+
+         <!-- Mode of communication with peer caches.        
+              INVALIDATION_SYNC is highly recommended as the mode for use
+              with entity and collection caches.     -->
+         <property name="cacheMode">INVALIDATION_SYNC</property> 
+
+         <!-- Name of cluster. Needs to be the same for all members -->
+         <property name="clusterName">${jboss.partition.name:DefaultPartition}-pess-entity-rr</property>        
+         <!-- Use a UDP (multicast) based stack. A udp-sync stack might be
+              slightly better (no JGroups FC) but we stick with udp to
+              help ensure this cache and others like timestamps-cache
+              that require FC can use the same underlying JGroups resources. -->
+         <property name="multiplexerStack">${jboss.default.jgroups.stack:tcp}</property>
+         <!-- Whether or not to fetch state on joining a cluster. -->
+         <property name="fetchInMemoryState">false</property>
+
+         <!-- The max amount of time (in milliseconds) we wait until the
+           state (ie. the contents of the cache) are retrieved from
+           existing members at startup. Ignored if FetchInMemoryState=false. -->
+         <property name="stateRetrievalTimeout">60000</property>
+
+         <!-- Number of milliseconds to wait until all responses for a
+               synchronous call have been received. -->
+         <property name="syncReplTimeout">17500</property>
+
+         <!-- Max number of milliseconds to wait for a lock acquisition -->
+         <property name="lockAcquisitionTimeout">15000</property>
+
+         <!-- Hibernate 2LC can replicate custom types, so we use marshalling -->
+         <property name="useRegionBasedMarshalling">true</property>
+         <!-- Must match the value of "useRegionBasedMarshalling" -->
+         <property name="inactiveOnStartup">true</property>
+
+         <!-- Disable asynchronous RPC marshalling/sending -->
+         <property name="serializationExecutorPoolSize">0</property>        
+         <!-- We have no asynchronous notification listeners -->
+         <property name="listenerAsyncPoolSize">0</property>
+                  
+         <property name="evictionConfig">
+             <bean class="org.jboss.cache.config.EvictionConfig">
+               <property name="wakeupInterval">5000</property>
+               <!--  Overall default -->
+               <property name="defaultEvictionRegionConfig">
+                  <bean class="org.jboss.cache.config.EvictionRegionConfig">
+                     <property name="regionName">/</property>
+                     <property name="evictionAlgorithmConfig">
+                        <bean class="org.jboss.cache.eviction.LRUAlgorithmConfig">
+                           <!-- Evict LRU node once we have more than this number of nodes -->
+                           <property name="maxNodes">10000</property>
+                           <!-- And, evict any node that hasn't been accessed in this many seconds -->
+                           <property name="timeToLiveSeconds">1000</property>
+                           <!-- Don't evict a node that's been accessed within this many seconds. 
+                                Set this to a value greater than your max expected transaction length. -->
+                           <property name="minTimeToLiveSeconds">120</property>
+                        </bean>
+                     </property>
+                  </bean>
+               </property>
+               <property name="evictionRegionConfigs">
+                  <list>
+                     <!--  Don't ever evict modification timestamps -->
+                     <bean class="org.jboss.cache.config.EvictionRegionConfig">
+                        <property name="regionName">/TS</property>
+                        <property name="evictionAlgorithmConfig">
+                           <bean class="org.jboss.cache.eviction.NullEvictionAlgorithmConfig"/>
+                        </property>
+                     </bean>
+                  </list>
+               </property>
+            </bean>
+         </property>
+      </bean>
+   </value>
+   </entry>
+
+   <!-- A config appropriate for query caching. Does not replicate
+        queries. DO NOT STORE TIMESTAMPS IN THIS CACHE. -->
+   <entry><key>local-query</key>
+   <value>      
+      <bean name="LocalQueryCache" class="org.jboss.cache.config.Configuration">
+
+         <!-- Node locking scheme -->
+         <property name="nodeLockingScheme">OPTIMISTIC</property>
+         <property name="useLockStriping">false</property>
+
+         <!-- LOCAL means don't communicate with other caches.  -->
+         <property name="cacheMode">LOCAL</property> 
+
+         <!-- Max number of milliseconds to wait for a lock acquisition -->
+         <property name="lockAcquisitionTimeout">15000</property>
+
+         <!-- We have no asynchronous notification listeners -->
+         <property name="listenerAsyncPoolSize">0</property>
+         
+         <property name="evictionConfig">
+             <bean class="org.jboss.cache.config.EvictionConfig">
+               <property name="wakeupInterval">5000</property>
+               <!--  Overall default -->
+               <property name="defaultEvictionRegionConfig">
+                  <bean class="org.jboss.cache.config.EvictionRegionConfig">
+                     <property name="regionName">/</property>
+                     <property name="evictionAlgorithmConfig">
+                        <bean class="org.jboss.cache.eviction.LRUAlgorithmConfig">
+                           <!-- Evict LRU node once we have more than this number of nodes -->
+                           <property name="maxNodes">10000</property>
+                           <!-- And, evict any node that hasn't been accessed in this many seconds -->
+                           <property name="timeToLiveSeconds">1000</property>
+                           <!-- Don't evict a node that's been accessed within this many seconds. 
+                                Set this to a value greater than your max expected transaction length. -->
+                           <property name="minTimeToLiveSeconds">120</property>
+                        </bean>
+                     </property>
+                  </bean>
+               </property>
+               <property name="evictionRegionConfigs">
+                  <list>
+                     <!--  Don't ever evict modification timestamps -->
+                     <bean class="org.jboss.cache.config.EvictionRegionConfig">
+                        <property name="regionName">/TS</property>
+                        <property name="evictionAlgorithmConfig">
+                           <bean class="org.jboss.cache.eviction.NullEvictionAlgorithmConfig"/>
+                        </property>
+                     </bean>
+                  </list>
+               </property>
+            </bean>
+         </property>
+      </bean>
+   </value>
+   </entry>
+
+   <!-- A query cache that replicates querie results. Replication is asynchronous.
+         DO NOT STORE TIMESTAMPS IN THIS CACHE as no initial state transfer
+         is performed. -->
+   <entry><key>replicated-query</key>
+   <value>      
+      <bean name="ReplicatedQueryCache" class="org.jboss.cache.config.Configuration">
+
+         <!-- Node locking scheme -->
+         <property name="nodeLockingScheme">OPTIMISTIC</property>
+         <property name="useLockStriping">false</property>
+
+         <!-- Mode of communication with peer caches.        
+              REPL_ASYNC means replicate but sender does not block waiting for
+              peers to acknowledge applying the change. Valid for queries as
+              the timestamp cache mechanism will allow Hibernate to discard
+              out-of-date queries.  -->
+         <property name="cacheMode">REPL_ASYNC</property> 
+
+         <!-- Name of cluster. Needs to be the same for all members -->
+         <property name="clusterName">${jboss.partition.name:DefaultPartition}-query</property>        
+         <!-- Use a UDP (multicast) based stack. Need JGroups flow control (FC)
+             because timestamp communication will not require a synchronous response. -->
+         <property name="multiplexerStack">${jboss.default.jgroups.stack:tcp}</property>
+         <!-- Whether or not to fetch state on joining a cluster. -->
+         <property name="fetchInMemoryState">false</property>
+
+         <!-- The max amount of time (in milliseconds) we wait until the
+           state (ie. the contents of the cache) are retrieved from
+           existing members at startup. Ignored if FetchInMemoryState=false. -->
+         <property name="stateRetrievalTimeout">60000</property>
+
+         <!-- Number of milliseconds to wait until all responses for a
+               synchronous call have been received. -->
+         <property name="syncReplTimeout">17500</property>
+
+         <!-- Max number of milliseconds to wait for a lock acquisition -->
+         <property name="lockAcquisitionTimeout">15000</property>
+
+         <!-- Hibernate 2LC can replicate custom types, so we use marshalling -->
+         <property name="useRegionBasedMarshalling">true</property>
+         <!-- Must match the value of "useRegionBasedMarshalling" -->
+         <property name="inactiveOnStartup">true</property>
+
+         <!-- Disable asynchronous RPC marshalling/sending -->
+         <property name="serializationExecutorPoolSize">0</property>        
+         <!-- We have no asynchronous notification listeners -->
+         <property name="listenerAsyncPoolSize">0</property>         
+         
+         <property name="evictionConfig">
+             <bean class="org.jboss.cache.config.EvictionConfig">
+               <property name="wakeupInterval">5000</property>
+               <!--  Overall default -->
+               <property name="defaultEvictionRegionConfig">
+                  <bean class="org.jboss.cache.config.EvictionRegionConfig">
+                     <property name="regionName">/</property>
+                     <property name="evictionAlgorithmConfig">
+                        <bean class="org.jboss.cache.eviction.LRUAlgorithmConfig">
+                           <!-- Evict LRU node once we have more than this number of nodes -->
+                           <property name="maxNodes">10000</property>
+                           <!-- And, evict any node that hasn't been accessed in this many seconds -->
+                           <property name="timeToLiveSeconds">1000</property>
+                           <!-- Don't evict a node that's been accessed within this many seconds. 
+                                Set this to a value greater than your max expected transaction length. -->
+                           <property name="minTimeToLiveSeconds">120</property>
+                        </bean>
+                     </property>
+                  </bean>
+               </property>
+               <property name="evictionRegionConfigs">
+                  <list>
+                     <!--  Don't ever evict modification timestamps -->
+                     <bean class="org.jboss.cache.config.EvictionRegionConfig">
+                        <property name="regionName">/TS</property>
+                        <property name="evictionAlgorithmConfig">
+                           <bean class="org.jboss.cache.eviction.NullEvictionAlgorithmConfig"/>
+                        </property>
+                     </bean>
+                  </list>
+               </property>
+            </bean>
+         </property>
+      </bean>
+   </value>
+   </entry>
+
+   <!-- Optimized for timestamp caching. A clustered timestamp cache
+        is required if query caching is used, even if the query cache
+        itself is configured with CacheMode=LOCAL.
+   -->   
+   <entry><key>timestamps-cache</key>
+   <value>      
+      <bean name="TimestampsCache" class="org.jboss.cache.config.Configuration">
+
+         <!-- Node locking scheme -->
+         <property name="nodeLockingScheme">MVCC</property>
+         <!-- READ_COMMITTED is as strong as necessary -->
+         <property name="isolationLevel">READ_COMMITTED</property>
+         <property name="useLockStriping">false</property>
+
+         <!-- Cannot be INVALIDATION. ASYNC for improved performance. -->
+         <property name="cacheMode">REPL_ASYNC</property> 
+
+         <!-- Name of cluster. Needs to be the same for all members -->
+         <property name="clusterName">${jboss.partition.name:DefaultPartition}-timestamps</property>        
+         <!-- Use a UDP (multicast) based stack. Need JGroups flow control (FC)
+             because timestamp communication will not require a synchronous response. -->
+         <property name="multiplexerStack">${jboss.default.jgroups.stack:tcp}</property>
+         <!-- Used for timestamps, so must fetch state. -->
+         <property name="fetchInMemoryState">true</property>
+
+         <!-- The max amount of time (in milliseconds) we wait until the
+           state (ie. the contents of the cache) are retrieved from
+           existing members at startup. Ignored if FetchInMemoryState=false. -->
+         <property name="stateRetrievalTimeout">60000</property>
+
+         <!-- Number of milliseconds to wait until all responses for a
+               synchronous call have been received. -->
+         <property name="syncReplTimeout">17500</property>
+
+         <!-- Max number of milliseconds to wait for a lock acquisition -->
+         <property name="lockAcquisitionTimeout">15000</property>
+
+         <!-- Hibernate 2LC can replicate custom types, so we use marshalling -->
+         <property name="useRegionBasedMarshalling">true</property>
+         <!-- Must match the value of "useRegionBasedMarshalling" -->
+         <property name="inactiveOnStartup">true</property>
+
+         <!-- Disable asynchronous RPC marshalling/sending -->
+         <property name="serializationExecutorPoolSize">0</property>        
+         <!-- We have no asynchronous notification listeners -->
+         <property name="listenerAsyncPoolSize">0</property>
+         
+         <!-- We should never evict timestamps, so eviction is disabled -->
+
+      </bean>
+   </value>
+   </entry>   
+   
+   <!-- A config appropriate for a cache that's shared for
+        entity, collection, query and timestamp caching. Not an advised
+        configuration, since it requires cache mode REPL_SYNC, which is the 
+        least efficient mode. Also requires a full state transfer at startup,
+        which can be expensive. Uses mvcc locking. -->
+   <entry><key>mvcc-shared</key>
+   <value>      
+      <bean name="MVCCSharedCache" class="org.jboss.cache.config.Configuration">
+
+         <!-- Node locking scheme -->
+         <property name="nodeLockingScheme">MVCC</property>
+         <!-- READ_COMMITTED is as strong as necessary for most 
+              2nd Level Cache use cases. -->
+         <property name="isolationLevel">READ_COMMITTED</property>
+         <property name="useLockStriping">false</property>
+
+         <!-- Must use REPL since used for timestamp caching. 
+              Must use SYNC to maintain cache coherency for entities. -->
+         <property name="cacheMode">REPL_SYNC</property> 
+
+         <!-- Name of cluster. Needs to be the same for all members -->
+         <property name="clusterName">${jboss.partition.name:DefaultPartition}-mvcc-shared</property>        
+         <!-- Use a UDP (multicast) based stack. Need JGroups flow control (FC)
+             because timestamp communication will not require a synchronous response. -->
+         <property name="multiplexerStack">${jboss.default.jgroups.stack:tcp}</property>
+         <!-- Used for timestamps, so must fetch state. -->
+         <property name="fetchInMemoryState">true</property>
+
+         <!-- The max amount of time (in milliseconds) we wait until the
+           state (ie. the contents of the cache) are retrieved from
+           existing members at startup. Ignored if FetchInMemoryState=false. -->
+         <property name="stateRetrievalTimeout">60000</property>
+
+         <!-- Number of milliseconds to wait until all responses for a
+               synchronous call have been received. -->
+         <property name="syncReplTimeout">17500</property>
+
+         <!-- Max number of milliseconds to wait for a lock acquisition -->
+         <property name="lockAcquisitionTimeout">15000</property>
+
+         <!-- Hibernate 2LC can replicate custom types, so we use marshalling -->
+         <property name="useRegionBasedMarshalling">true</property>
+         <!-- Must match the value of "useRegionBasedMarshalling" -->
+         <property name="inactiveOnStartup">true</property>
+
+         <!-- Disable asynchronous RPC marshalling/sending -->
+         <property name="serializationExecutorPoolSize">0</property>        
+         <!-- We have no asynchronous notification listeners -->
+         <property name="listenerAsyncPoolSize">0</property>        
+         
+         <property name="evictionConfig">
+             <bean class="org.jboss.cache.config.EvictionConfig">
+               <property name="wakeupInterval">5000</property>
+               <!--  Overall default -->
+               <property name="defaultEvictionRegionConfig">
+                  <bean class="org.jboss.cache.config.EvictionRegionConfig">
+                     <property name="regionName">/</property>
+                     <property name="evictionAlgorithmConfig">
+                        <bean class="org.jboss.cache.eviction.LRUAlgorithmConfig">
+                           <!-- Evict LRU node once we have more than this number of nodes -->
+                           <property name="maxNodes">10000</property>
+                           <!-- And, evict any node that hasn't been accessed in this many seconds -->
+                           <property name="timeToLiveSeconds">1000</property>
+                           <!-- Don't evict a node that's been accessed within this many seconds. 
+                                Set this to a value greater than your max expected transaction length. -->
+                           <property name="minTimeToLiveSeconds">120</property>
+                        </bean>
+                     </property>
+                  </bean>
+               </property>
+               <property name="evictionRegionConfigs">
+                  <list>
+                     <!--  Don't ever evict modification timestamps -->
+                     <bean class="org.jboss.cache.config.EvictionRegionConfig">
+                        <property name="regionName">/TS</property>
+                        <property name="evictionAlgorithmConfig">
+                           <bean class="org.jboss.cache.eviction.NullEvictionAlgorithmConfig"/>
+                        </property>
+                     </bean>
+                  </list>
+               </property>
+            </bean>
+         </property>
+      </bean>
+   </value>
+   </entry>
+   
+   <!-- A config appropriate for a cache that's shared for
+        entity, collection, query and timestamp caching. Not an advised
+        configuration, since it requires cache mode REPL_SYNC, which is the 
+        least efficient mode. Also requires a full state transfer at startup,
+        which can be expensive. Uses optimistic locking -->
+   <entry><key>optimistic-shared</key>
+   <value>      
+      <bean name="OptimisticSharedCache" class="org.jboss.cache.config.Configuration">
+
+         <!-- Node locking scheme -->
+         <property name="nodeLockingScheme">OPTIMISTIC</property>
+         <property name="useLockStriping">false</property>
+
+         <!-- Must use REPL since used for timestamp caching. 
+              Must use SYNC to maintain cache coherency for entities. -->
+         <property name="cacheMode">REPL_SYNC</property> 
+
+         <!-- Name of cluster. Needs to be the same for all members -->
+         <property name="clusterName">${jboss.partition.name:DefaultPartition}-opt-shared</property>        
+         <!-- Use a UDP (multicast) based stack. Need JGroups flow control (FC)
+             because timestamp communication will not require a synchronous response. -->
+         <property name="multiplexerStack">${jboss.default.jgroups.stack:tcp}</property>
+         <!-- Used for timestamps, so must fetch state. -->
+         <property name="fetchInMemoryState">true</property>
+
+         <!-- The max amount of time (in milliseconds) we wait until the
+           state (ie. the contents of the cache) are retrieved from
+           existing members at startup. Ignored if FetchInMemoryState=false. -->
+         <property name="stateRetrievalTimeout">60000</property>
+
+         <!-- Number of milliseconds to wait until all responses for a
+               synchronous call have been received. -->
+         <property name="syncReplTimeout">17500</property>
+
+         <!-- Max number of milliseconds to wait for a lock acquisition -->
+         <property name="lockAcquisitionTimeout">15000</property>
+
+         <!-- Hibernate 2LC can replicate custom types, so we use marshalling -->
+         <property name="useRegionBasedMarshalling">true</property>
+         <!-- Must match the value of "useRegionBasedMarshalling" -->
+         <property name="inactiveOnStartup">true</property>
+
+         <!-- Disable asynchronous RPC marshalling/sending -->
+         <property name="serializationExecutorPoolSize">0</property>        
+         <!-- We have no asynchronous notification listeners -->
+         <property name="listenerAsyncPoolSize">0</property>        
+         
+         <property name="evictionConfig">
+             <bean class="org.jboss.cache.config.EvictionConfig">
+               <property name="wakeupInterval">5000</property>
+               <!--  Overall default -->
+               <property name="defaultEvictionRegionConfig">
+                  <bean class="org.jboss.cache.config.EvictionRegionConfig">
+                     <property name="regionName">/</property>
+                     <property name="evictionAlgorithmConfig">
+                        <bean class="org.jboss.cache.eviction.LRUAlgorithmConfig">
+                           <!-- Evict LRU node once we have more than this number of nodes -->
+                           <property name="maxNodes">10000</property>
+                           <!-- And, evict any node that hasn't been accessed in this many seconds -->
+                           <property name="timeToLiveSeconds">1000</property>
+                           <!-- Don't evict a node that's been accessed within this many seconds. 
+                                Set this to a value greater than your max expected transaction length. -->
+                           <property name="minTimeToLiveSeconds">120</property>
+                        </bean>
+                     </property>
+                  </bean>
+               </property>
+               <property name="evictionRegionConfigs">
+                  <list>
+                     <!--  Don't ever evict modification timestamps -->
+                     <bean class="org.jboss.cache.config.EvictionRegionConfig">
+                        <property name="regionName">/TS</property>
+                        <property name="evictionAlgorithmConfig">
+                           <bean class="org.jboss.cache.eviction.NullEvictionAlgorithmConfig"/>
+                        </property>
+                     </bean>
+                  </list>
+               </property>
+            </bean>
+         </property>
+      </bean>
+   </value>
+   </entry>  
+   
+   <!-- A config appropriate for a cache that's shared for
+        entity, collection, query and timestamp caching. Not an advised
+        configuration, since it requires cache mode REPL_SYNC, which is the 
+        least efficient mode. Also requires a full state transfer at startup,
+        which can be expensive. Uses pessmistic locking. -->
+   <entry><key>pessimistic-shared</key>
+   <value>      
+      <bean name="PessimisticSharedCache" class="org.jboss.cache.config.Configuration">
+
+         <!-- Node locking scheme -->
+         <property name="nodeLockingScheme">PESSIMISTIC</property>
+         <!-- READ_COMMITTED is as strong as necessary for most 
+              2nd Level Cache use cases. -->
+         <property name="isolationLevel">READ_COMMITTED</property>
+         <property name="useLockStriping">false</property>
+
+         <!-- Must use REPL since used for timestamp caching. 
+              Must use SYNC to maintain cache coherency for entities. -->
+         <property name="cacheMode">REPL_SYNC</property> 
+
+         <!-- Name of cluster. Needs to be the same for all members -->
+         <property name="clusterName">${jboss.partition.name:DefaultPartition}-pess-shared</property>        
+         <!-- Use a UDP (multicast) based stack. Need JGroups flow control (FC)
+             because timestamp communication will not require a synchronous response. -->
+         <property name="multiplexerStack">${jboss.default.jgroups.stack:tcp}</property>
+         <!-- Used for timestamps, so must fetch state. -->
+         <property name="fetchInMemoryState">true</property>
+
+         <!-- The max amount of time (in milliseconds) we wait until the
+           state (ie. the contents of the cache) are retrieved from
+           existing members at startup. Ignored if FetchInMemoryState=false. -->
+         <property name="stateRetrievalTimeout">60000</property>
+
+         <!-- Number of milliseconds to wait until all responses for a
+               synchronous call have been received. -->
+         <property name="syncReplTimeout">17500</property>
+
+         <!-- Max number of milliseconds to wait for a lock acquisition -->
+         <property name="lockAcquisitionTimeout">15000</property>
+
+         <!-- Hibernate 2LC can replicate custom types, so we use marshalling -->
+         <property name="useRegionBasedMarshalling">true</property>
+         <!-- Must match the value of "useRegionBasedMarshalling" -->
+         <property name="inactiveOnStartup">true</property>
+
+         <!-- Disable asynchronous RPC marshalling/sending -->
+         <property name="serializationExecutorPoolSize">0</property>        
+         <!-- We have no asynchronous notification listeners -->
+         <property name="listenerAsyncPoolSize">0</property>        
+         
+         <property name="evictionConfig">
+             <bean class="org.jboss.cache.config.EvictionConfig">
+               <property name="wakeupInterval">5000</property>
+               <!--  Overall default -->
+               <property name="defaultEvictionRegionConfig">
+                  <bean class="org.jboss.cache.config.EvictionRegionConfig">
+                     <property name="regionName">/</property>
+                     <property name="evictionAlgorithmConfig">
+                        <bean class="org.jboss.cache.eviction.LRUAlgorithmConfig">
+                           <!-- Evict LRU node once we have more than this number of nodes -->
+                           <property name="maxNodes">10000</property>
+                           <!-- And, evict any node that hasn't been accessed in this many seconds -->
+                           <property name="timeToLiveSeconds">1000</property>
+                           <!-- Don't evict a node that's been accessed within this many seconds. 
+                                Set this to a value greater than your max expected transaction length. -->
+                           <property name="minTimeToLiveSeconds">120</property>
+                        </bean>
+                     </property>
+                  </bean>
+               </property>
+               <property name="evictionRegionConfigs">
+                  <list>
+                     <!--  Don't ever evict modification timestamps -->
+                     <bean class="org.jboss.cache.config.EvictionRegionConfig">
+                        <property name="regionName">/TS</property>
+                        <property name="evictionAlgorithmConfig">
+                           <bean class="org.jboss.cache.eviction.NullEvictionAlgorithmConfig"/>
+                        </property>
+                     </bean>
+                  </list>
+               </property>
+            </bean>
+         </property>
+      </bean>
+   </value>
+   </entry>  
+   
+   <!-- Same as "mvcc-shared" but here we use REPEATABLE_READ
+        instead of READ_COMMITTED. REPEATABLE_READ is only useful if the 
+        application evicts/clears entities from the Hibernate Session and 
+        then expects to repeatably re-read them in the same transaction.
+        Otherwise, the Session's internal cache provides a repeatable-read 
+        semantic. Before choosing this config, carefully read the docs
+        and make sure you really need REPEATABLE_READ.  -->
+   <entry><key>mvcc-shared-repeatable</key>
+   <value>      
+      <bean name="MVCCSharedRepeatableCache" class="org.jboss.cache.config.Configuration">
+
+         <!-- Node locking scheme -->
+         <property name="nodeLockingScheme">MVCC</property>
+         <!-- READ_COMMITTED is as strong as necessary for most 
+              2nd Level Cache use cases. -->
+         <property name="isolationLevel">REPEATABLE_READ</property>
+         <property name="useLockStriping">false</property>
+
+         <!-- Must use REPL since used for timestamp caching. 
+              Must use SYNC to maintain cache coherency for entities. -->
+         <property name="cacheMode">REPL_SYNC</property> 
+
+         <!-- Name of cluster. Needs to be the same for all members -->
+         <property name="clusterName">${jboss.partition.name:DefaultPartition}-mvcc-shared-rr</property>        
+         <!-- Use a UDP (multicast) based stack. Need JGroups flow control (FC)
+             because timestamp communication will not require a synchronous response. -->
+         <property name="multiplexerStack">${jboss.default.jgroups.stack:tcp}</property>
+         <!-- Used for timestamps, so must fetch state. -->
+         <property name="fetchInMemoryState">true</property>
+
+         <!-- The max amount of time (in milliseconds) we wait until the
+           state (ie. the contents of the cache) are retrieved from
+           existing members at startup. Ignored if FetchInMemoryState=false. -->
+         <property name="stateRetrievalTimeout">60000</property>
+
+         <!-- Number of milliseconds to wait until all responses for a
+               synchronous call have been received. -->
+         <property name="syncReplTimeout">17500</property>
+
+         <!-- Max number of milliseconds to wait for a lock acquisition -->
+         <property name="lockAcquisitionTimeout">15000</property>
+
+         <!-- Hibernate 2LC can replicate custom types, so we use marshalling -->
+         <property name="useRegionBasedMarshalling">true</property>
+         <!-- Must match the value of "useRegionBasedMarshalling" -->
+         <property name="inactiveOnStartup">true</property>
+
+         <!-- Disable asynchronous RPC marshalling/sending -->
+         <property name="serializationExecutorPoolSize">0</property>        
+         <!-- We have no asynchronous notification listeners -->
+         <property name="listenerAsyncPoolSize">0</property>        
+         
+         <property name="evictionConfig">
+             <bean class="org.jboss.cache.config.EvictionConfig">
+               <property name="wakeupInterval">5000</property>
+               <!--  Overall default -->
+               <property name="defaultEvictionRegionConfig">
+                  <bean class="org.jboss.cache.config.EvictionRegionConfig">
+                     <property name="regionName">/</property>
+                     <property name="evictionAlgorithmConfig">
+                        <bean class="org.jboss.cache.eviction.LRUAlgorithmConfig">
+                           <!-- Evict LRU node once we have more than this number of nodes -->
+                           <property name="maxNodes">10000</property>
+                           <!-- And, evict any node that hasn't been accessed in this many seconds -->
+                           <property name="timeToLiveSeconds">1000</property>
+                           <!-- Don't evict a node that's been accessed within this many seconds. 
+                                Set this to a value greater than your max expected transaction length. -->
+                           <property name="minTimeToLiveSeconds">120</property>
+                        </bean>
+                     </property>
+                  </bean>
+               </property>
+               <property name="evictionRegionConfigs">
+                  <list>
+                     <!--  Don't ever evict modification timestamps -->
+                     <bean class="org.jboss.cache.config.EvictionRegionConfig">
+                        <property name="regionName">/TS</property>
+                        <property name="evictionAlgorithmConfig">
+                           <bean class="org.jboss.cache.eviction.NullEvictionAlgorithmConfig"/>
+                        </property>
+                     </bean>
+                  </list>
+               </property>
+            </bean>
+         </property>
+      </bean>
+   </value>
+   </entry>
+   
+   <!-- Same as "pessimistic-shared" but here we use REPEATABLE_READ
+        instead of READ_COMMITTED. REPEATABLE_READ is only useful if the 
+        application evicts/clears entities from the Hibernate Session and 
+        then expects to repeatably re-read them in the same transaction.
+        Otherwise, the Session's internal cache provides a repeatable-read 
+        semantic. Before choosing this config, carefully read the docs
+        and make sure you really need REPEATABLE_READ. -->
+   <entry><key>pessimistic-shared-repeatable</key>
+   <value>      
+      <bean name="PessimisticSharedRepeatableCache" class="org.jboss.cache.config.Configuration">
+
+         <!-- Node locking scheme -->
+         <property name="nodeLockingScheme">PESSIMISTIC</property>
+         <property name="isolationLevel">REPEATABLE_READ</property>
+         <property name="useLockStriping">false</property>
+
+         <!-- Must use REPL since used for timestamp caching. 
+              Must use SYNC to maintain cache coherency for entities. -->
+         <property name="cacheMode">REPL_SYNC</property> 
+
+         <!-- Name of cluster. Needs to be the same for all members -->
+         <property name="clusterName">${jboss.partition.name:DefaultPartition}-pess-shared-rr</property>        
+         <!-- Use a UDP (multicast) based stack. Need JGroups flow control (FC)
+             because timestamp communication will not require a synchronous response. -->
+         <property name="multiplexerStack">${jboss.default.jgroups.stack:tcp}</property>
+         <!-- Used for timestamps, so must fetch state. -->
+         <property name="fetchInMemoryState">true</property>
+
+         <!-- The max amount of time (in milliseconds) we wait until the
+           state (ie. the contents of the cache) are retrieved from
+           existing members at startup. Ignored if FetchInMemoryState=false. -->
+         <property name="stateRetrievalTimeout">60000</property>
+
+         <!-- Number of milliseconds to wait until all responses for a
+               synchronous call have been received. -->
+         <property name="syncReplTimeout">17500</property>
+
+         <!-- Max number of milliseconds to wait for a lock acquisition -->
+         <property name="lockAcquisitionTimeout">15000</property>
+
+         <!-- Hibernate 2LC can replicate custom types, so we use marshalling -->
+         <property name="useRegionBasedMarshalling">true</property>
+         <!-- Must match the value of "useRegionBasedMarshalling" -->
+         <property name="inactiveOnStartup">true</property>
+
+         <!-- Disable asynchronous RPC marshalling/sending -->
+         <property name="serializationExecutorPoolSize">0</property>        
+         <!-- We have no asynchronous notification listeners -->
+         <property name="listenerAsyncPoolSize">0</property>        
+         
+         <property name="evictionConfig">
+             <bean class="org.jboss.cache.config.EvictionConfig">
+               <property name="wakeupInterval">5000</property>
+               <!--  Overall default -->
+               <property name="defaultEvictionRegionConfig">
+                  <bean class="org.jboss.cache.config.EvictionRegionConfig">
+                     <property name="regionName">/</property>
+                     <property name="evictionAlgorithmConfig">
+                        <bean class="org.jboss.cache.eviction.LRUAlgorithmConfig">
+                           <!-- Evict LRU node once we have more than this number of nodes -->
+                           <property name="maxNodes">10000</property>
+                           <!-- And, evict any node that hasn't been accessed in this many seconds -->
+                           <property name="timeToLiveSeconds">1000</property>
+                           <!-- Don't evict a node that's been accessed within this many seconds. 
+                                Set this to a value greater than your max expected transaction length. -->
+                           <property name="minTimeToLiveSeconds">120</property>
+                        </bean>
+                     </property>
+                  </bean>
+               </property>
+               <property name="evictionRegionConfigs">
+                  <list>
+                     <!--  Don't ever evict modification timestamps -->
+                     <bean class="org.jboss.cache.config.EvictionRegionConfig">
+                        <property name="regionName">/TS</property>
+                        <property name="evictionAlgorithmConfig">
+                           <bean class="org.jboss.cache.eviction.NullEvictionAlgorithmConfig"/>
+                        </property>
+                     </bean>
+                  </list>
+               </property>
+            </bean>
+         </property>
+      </bean>
+   </value>
+   </entry>
+       
+         </map>
+      </property>
+   </bean>
+    
+</deployment>
\ No newline at end of file


Property changes on: branches/Branch_No_Multicast/cluster/src/resources/jboss-cache-manager.sar/META-INF/jboss-cache-manager-jboss-beans-ec.xml
___________________________________________________________________
Name: svn:keywords
   + Id Revision

Added: branches/Branch_No_Multicast/cluster/src/resources/jgroups/jgroups-channelfactory-stacks-ec.xml
===================================================================
--- branches/Branch_No_Multicast/cluster/src/resources/jgroups/jgroups-channelfactory-stacks-ec.xml	                        (rev 0)
+++ branches/Branch_No_Multicast/cluster/src/resources/jgroups/jgroups-channelfactory-stacks-ec.xml	2010-06-15 20:58:49 UTC (rev 106075)
@@ -0,0 +1,246 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE protocol_stacks [
+   <!ENTITY shared-tcp '
+		<!--  TCP transport config meant to be shared between different channels
+		      with different requirements. Message bundling is disabled in this 
+		      general-purpose config as it can add latency to synchronous RPCs. -->
+		
+            <TCP
+                 singleton_name="tcp"
+                 start_port="${jboss.jgroups.tcp.tcp_port:7600}"
+                 tcp_nodelay="true"
+                 loopback="true"
+                 recv_buf_size="20000000"
+                 send_buf_size="640000"
+                 discard_incompatible_packets="true"
+                 max_bundle_size="64000"
+                 max_bundle_timeout="30"
+                 use_incoming_packet_handler="true"
+                 enable_bundling="false"
+                 use_send_queues="false"
+                 sock_conn_timeout="300"
+                 skip_suspected_members="true"
+                 timer.num_threads="12"
+                 enable_diagnostics="${jboss.jgroups.enable_diagnostics:true}"
+                 diagnostics_addr="${jboss.jgroups.diagnostics_addr:224.0.75.75}"
+                 diagnostics_port="${jboss.jgroups.diagnostics_port:7500}"
+   
+                 thread_pool.enabled="true"
+                 thread_pool.min_threads="20"
+                 thread_pool.max_threads="200"
+                 thread_pool.keep_alive_time="5000"
+                 thread_pool.queue_enabled="true"
+                 thread_pool.queue_max_size="1000"
+                 thread_pool.rejection_policy="discard"
+      
+                 oob_thread_pool.enabled="true"
+                 oob_thread_pool.min_threads="20"
+                 oob_thread_pool.max_threads="200"
+                 oob_thread_pool.keep_alive_time="1000"
+                 oob_thread_pool.queue_enabled="false"
+                 oob_thread_pool.rejection_policy="discard"/>
+		'>
+]>
+
+
+<!--
+  Standard JGroups protocol stacks definitions, used by the JChannelFactory bean.
+  
+  Author: Bela Ban, Brian Stansberry
+  Version: $Id:jgroups-channelfactory-stacks.xml 71313 2008-03-26 19:46:59Z bstansberry at jboss.com $
+-->
+<protocol_stacks>
+
+    <stack name="tcp"
+           description="TCP based stack, with flow control and message bundling. 
+                        TCP stacks are usually used when IP multicasting cannot 
+                        be used in a network, e.g. because it is disabled (e.g. 
+                        routers discard multicast)">
+        <config>
+            &shared-tcp;
+            <S3_PING access_key="${jboss.jgroups.s3_ping.access_key:}" secret_access_key="${jboss.jgroups.s3_ping.secret_access_key:}" location="${jboss.jgroups.s3_ping.bucket:}" />
+            <MERGE2 max_interval="100000" min_interval="20000"/>
+            <FD_SOCK start_port="${jboss.jgroups.tcp.fd_sock_port:57600}"/>
+            <FD timeout="6000" max_tries="5" shun="true"/>
+            <VERIFY_SUSPECT timeout="1500"/>
+            <BARRIER/>
+            <pbcast.NAKACK use_mcast_xmit="false" gc_lag="0"
+                           retransmit_timeout="300,600,1200,2400,4800"
+                           discard_delivered_msgs="true"/>
+            <UNICAST timeout="300,600,1200,2400,3600"/>
+            <pbcast.STABLE stability_delay="1000" desired_avg_gossip="50000"
+                           max_bytes="400000"/>            
+            <VIEW_SYNC avg_send_interval="10000"/>               
+            <pbcast.GMS print_local_addr="true" join_timeout="3000"
+                        shun="true"
+                        view_bundling="true"
+                        view_ack_collection_timeout="5000"
+                        resume_task_timeout="7500"/>
+            <FC max_credits="2000000" min_threshold="0.10" 
+                ignore_synchronous_response="true"/>
+            <FRAG2 frag_size="60000"/>
+            <!-- pbcast.STREAMING_STATE_TRANSFER/ -->
+            <pbcast.STATE_TRANSFER/>
+            <pbcast.FLUSH timeout="0" start_flush_timeout="10000"/>
+        </config>
+    </stack>
+
+
+    <stack name="tcp-sync"
+           description="TCP based stack, without flow control and without 
+                        message bundling. TCP stacks are usually used when IP 
+                        multicasting cannot be used in a network (e.g.routers 
+                        discard multicast). This configuration should be used 
+                        instead of 'tcp' above when (1) synchronous calls are 
+                        used and (2) the message volume (rate and size) is not 
+                        that large.">
+        <config>
+            <TCP
+                 singleton_name="tcp_sync"
+                 start_port="${jboss.jgroups.tcp_sync.tcp_port:7650}"
+                 tcp_nodelay="true"
+                 loopback="true"
+                 recv_buf_size="20000000"
+                 send_buf_size="640000"
+                 discard_incompatible_packets="true"
+                 enable_bundling="false"
+                 use_send_queues="false"
+                 sock_conn_timeout="300"
+                 skip_suspected_members="true"
+                 enable_diagnostics="${jboss.jgroups.enable_diagnostics:true}"
+                 diagnostics_addr="${jboss.jgroups.diagnostics_addr:224.0.75.75}"
+                 diagnostics_port="${jboss.jgroups.diagnostics_port:7500}"
+                 
+                 thread_pool.enabled="true"
+                 thread_pool.min_threads="8"
+                 thread_pool.max_threads="200"
+                 thread_pool.keep_alive_time="5000"
+                 thread_pool.queue_enabled="true"
+                 thread_pool.queue_max_size="1000"
+                 thread_pool.rejection_policy="discard"
+      
+                 oob_thread_pool.enabled="true"
+                 oob_thread_pool.min_threads="20"
+                 oob_thread_pool.max_threads="200"
+                 oob_thread_pool.keep_alive_time="1000"
+                 oob_thread_pool.queue_enabled="false"
+                 oob_thread_pool.rejection_policy="discard"/>
+            <S3_PING access_key="${jboss.jgroups.s3_ping.access_key:}" secret_access_key="${jboss.jgroups.s3_ping.secret_access_key:}" location="${jboss.jgroups.s3_ping.bucket:}" />
+            <MERGE2 max_interval="100000" min_interval="20000"/>
+            <FD_SOCK start_port="${jboss.jgroups.tcp_sync.fd_sock_port:57650}"/>
+            <FD timeout="6000" max_tries="5" shun="true"/>
+            <VERIFY_SUSPECT timeout="1500"/>
+            <BARRIER/>
+            <pbcast.NAKACK use_mcast_xmit="false" gc_lag="0"
+                           retransmit_timeout="300,600,1200,2400,4800"
+                           discard_delivered_msgs="true"/>
+            <UNICAST timeout="300,600,1200,2400,3600"/>
+            <pbcast.STABLE stability_delay="1000" desired_avg_gossip="50000"
+                           max_bytes="400000"/>            
+            <VIEW_SYNC avg_send_interval="10000"/>
+            <pbcast.GMS print_local_addr="true" join_timeout="3000"
+                        shun="true"
+                        view_bundling="true"
+                        view_ack_collection_timeout="5000"
+                        resume_task_timeout="7500"/>
+            <!-- pbcast.STREAMING_STATE_TRANSFER/ -->
+            <pbcast.STATE_TRANSFER/>
+            <pbcast.FLUSH timeout="0" start_flush_timeout="10000"/>
+        </config>
+    </stack>
+    
+    <stack name="jbm-control"
+           description="Stack optimized for the JBoss Messaging Control Channel">
+       <config>
+            <!-- By default we use the same TCP transport protocol config as is 
+                 used for the default 'tcp' stack defined above. This allows
+                 the JBoss Messaging Control Channel to use the same sockets,
+                 network buffers and thread pools as are used by the other
+                 standard JBoss AS clustered services.
+                
+                 The TCP config is included via an XML entity to ensure that
+                 it remains consistent between this stack and the 'tcp' 
+                 stack above.
+            -->
+            &shared-tcp;
+            <S3_PING access_key="${jboss.jgroups.s3_ping.access_key:}" secret_access_key="${jboss.jgroups.s3_ping.secret_access_key:}" location="${jboss.jgroups.s3_ping.bucket:}" />
+            <MERGE2 max_interval="100000"
+                    min_interval="20000"/>
+            <FD_SOCK start_port="${jboss.jgroups.jbm_control.fd_sock_port:53200}"/>
+            <FD timeout="6000" max_tries="5" shun="true"/>
+            <VERIFY_SUSPECT timeout="1500" />
+            <BARRIER />
+            <pbcast.NAKACK use_stats_for_retransmission="false"
+                   exponential_backoff="150"
+                   use_mcast_xmit="true" gc_lag="0"
+                   retransmit_timeout="50,300,600,1200"
+                   discard_delivered_msgs="true"/>
+            <UNICAST timeout="300,600,1200,2400,3600"/>
+            <pbcast.STABLE stability_delay="1000" desired_avg_gossip="50000"
+                           max_bytes="400000"/>
+            <VIEW_SYNC avg_send_interval="10000"/>
+            <pbcast.GMS print_local_addr="true" join_timeout="3000"
+                shun="true"
+                view_bundling="true"/>
+            <FC max_credits="500000" min_threshold="0.20" 
+                ignore_synchronous_response="true"/>
+            <FRAG2 frag_size="60000"  />
+            <pbcast.STATE_TRANSFER/>
+            <pbcast.FLUSH timeout="20000" start_flush_timeout="10000"/>
+        </config>
+    </stack>
+    
+    
+    <stack name="jbm-data"
+           description="Stack optimized for the JBoss Messaging Data Channel">
+        <config>
+            <TCP singleton_name="jbm-data"
+                 start_port="${jboss.messaging.datachanneltcpport,jboss.jgroups.jbm_data.tcp_port:7900}"
+                 loopback="true"
+                 recv_buf_size="20000000"
+                 send_buf_size="640000"
+                 discard_incompatible_packets="true"
+                 enable_bundling="false"
+                 use_send_queues="false"
+                 sock_conn_timeout="300"
+                 skip_suspected_members="true"
+                 enable_diagnostics="${jboss.jgroups.enable_diagnostics:true}"
+                 diagnostics_addr="${jboss.jgroups.diagnostics_addr:224.0.75.75}"
+                 diagnostics_port="${jboss.jgroups.diagnostics_port:7500}"
+                 
+                 thread_pool.enabled="true"
+                 thread_pool.min_threads="8"
+                 thread_pool.max_threads="200"
+                 thread_pool.keep_alive_time="5000"
+                 thread_pool.queue_enabled="true" 
+                 thread_pool.queue_max_size="500"
+                 thread_pool.rejection_policy="discard"
+                 
+                 oob_thread_pool.enabled="true"
+                 oob_thread_pool.min_threads="1"
+                 oob_thread_pool.max_threads="100" 
+                 oob_thread_pool.keep_alive_time="5000"
+                 oob_thread_pool.queue_enabled="false"
+                 oob_thread_pool.rejection_policy="discard"/>
+            <S3_PING access_key="${jboss.jgroups.s3_ping.access_key:}" secret_access_key="${jboss.jgroups.s3_ping.secret_access_key:}" location="${jboss.jgroups.s3_ping.bucket:}" />
+            <MERGE2 max_interval="100000" min_interval="20000"/>
+            <FD_SOCK start_port="${jboss.jgroups.jbm_data.fd_sock_port:57900}"/>
+            <FD timeout="6000" max_tries="5" shun="true"/>
+            <VERIFY_SUSPECT timeout="1500"/>
+            <BARRIER/>
+            <pbcast.NAKACK use_mcast_xmit="false" gc_lag="0"
+                           retransmit_timeout="300,600,1200,2400,4800"
+                           discard_delivered_msgs="true"/>
+            <UNICAST timeout="300,600,1200,2400,3600"/>
+            <pbcast.STABLE stability_delay="1000" desired_avg_gossip="50000"
+                           max_bytes="400000"/>
+            <VIEW_SYNC avg_send_interval="10000"/>
+
+            <pbcast.GMS print_local_addr="true" join_timeout="3000"
+                shun="true" view_bundling="true"/>
+        </config>
+    </stack>
+
+</protocol_stacks>
+
+


Property changes on: branches/Branch_No_Multicast/cluster/src/resources/jgroups/jgroups-channelfactory-stacks-ec.xml
___________________________________________________________________
Name: svn:keywords
   + Id Revision

Modified: branches/Branch_No_Multicast/testsuite/build.xml
===================================================================
--- branches/Branch_No_Multicast/testsuite/build.xml	2010-06-15 20:50:48 UTC (rev 106074)
+++ branches/Branch_No_Multicast/testsuite/build.xml	2010-06-15 20:58:49 UTC (rev 106075)
@@ -93,7 +93,12 @@
    <property name="partitionName" value="DefaultPartition"/>
    <!-- Same thing, but passed to the client -->
    <property name="jbosstest.partitionName" value="${partitionName}"/>
-
+	
+	<!-- Default Amazon S3 values. The correct values need to be set externally -->
+	<property name="s3_ping.access_key" value="CHANGEIT"/>
+	<property name="s3_ping.secret_access_key" value="CHANGEIT"/>
+	<property name="s3_ping.bucket" value="CHANGEIT"/>
+	
    <!-- =================== -->
    <!-- Basic Configuration -->
    <!-- =================== -->
@@ -1738,14 +1743,20 @@
 
    <target name="tomcat-sso-clustered-tests"
      description="Tomcat tests requiring clustered SSO configured">
+    
+    <!-- Default jgroups stack to use -->
+    <property name="jboss-junit-configuration" value="udp"/>
+    <!-- Default configuration to build the test config from -->
+    <property name="baseconf" value="all"/>
     <!-- Create the sso enabled tomcat config starting with the all config -->
-    <create-cluster-sso-node newconf="tomcat-sso-cluster0"/>
-    <create-cluster-sso-node newconf="tomcat-sso-cluster1"/>
+    <create-cluster-sso-node newconf="tomcat-sso-cluster0" baseconf="${baseconf}"/>
+    <create-cluster-sso-node newconf="tomcat-sso-cluster1" baseconf="${baseconf}"/>
   
     <echo message="Modifying the node0 and node1 Tomcat configuration for REPL_SYNC/UseJK"/>
     <http-cluster-node-config-change conf="tomcat-sso-cluster0"/>
     <http-cluster-node-config-change conf="tomcat-sso-cluster1"/>
 
+   
     <server:start name="tomcat-sso-cluster0"/>
     <server:start name="tomcat-sso-cluster1"/>
 
@@ -3359,10 +3370,13 @@
    <!--  Starts two servers, run few simultaneous tests, kill the server only once and get the results of all the tests  -->
    <target name="tests-jbossmessaging-cluster"
    	   description="Run JBM in cluster" unless="build.ewp">
+   	
+      <!-- Default configuration to build the test config from -->
+      <property name="baseconf" value="all"/>
 
   	  <delete dir="${jboss.dist}/server/jbm-cluster1" />
    	  <delete dir="${jboss.dist}/server/jbm-cluster2" />
-      <create-config baseconf="all" newconf="jbm-cluster1">
+      <create-config baseconf="${baseconf}" newconf="jbm-cluster1">
          <patternset>
             <include name="conf/**"/>
             <include name="deploy/**"/>
@@ -3371,7 +3385,7 @@
             <include name="lib/**"/>
          </patternset>
       </create-config>
-      <create-config baseconf="all" newconf="jbm-cluster2">
+      <create-config baseconf="${baseconf}" newconf="jbm-cluster2">
          <patternset>
             <include name="conf/**"/>
              <include name="deploy/**"/>

Modified: branches/Branch_No_Multicast/testsuite/imports/config/tests-clustering.xml
===================================================================
--- branches/Branch_No_Multicast/testsuite/imports/config/tests-clustering.xml	2010-06-15 20:50:48 UTC (rev 106074)
+++ branches/Branch_No_Multicast/testsuite/imports/config/tests-clustering.xml	2010-06-15 20:58:49 UTC (rev 106075)
@@ -283,18 +283,26 @@
   </target>
   
   <target name="tests-clustering-configure" unless="${tests.clustering.skip.startup}">
-    <create-cluster-node conf="cluster-${jboss-junit-configuration}-0"/>
-    <create-cluster-node conf="cluster-${jboss-junit-configuration}-1"/>
+  	 <!-- Default configuration to build the test config from -->
+  	 <property name="baseconf" value="all"/>
+    <create-cluster-node-from-baseconf conf="cluster-${jboss-junit-configuration}-0" baseconf="${baseconf}"/>
+    <create-cluster-node-from-baseconf conf="cluster-${jboss-junit-configuration}-1" baseconf="${baseconf}"/>
   </target>
 
   <target name="tests-clustering-field-configure" unless="${tests.clustering.skip.startup}">
-    <create-cluster-node conf="cluster-field-${jboss-junit-configuration}-0"/>
-    <create-cluster-node conf="cluster-field-${jboss-junit-configuration}-1"/>
+  	  <!-- Default configuration to build the test config from -->
+  	  <property name="baseconf" value="all"/>
+  	  <create-cluster-node-from-baseconf conf="cluster-field-${jboss-junit-configuration}-0" baseconf="${baseconf}"/>
+    <create-cluster-node-from-baseconf conf="cluster-field-${jboss-junit-configuration}-1" baseconf="${baseconf}"/>
   </target>
 
   <target name="tests-clustering-sync-configure" unless="${tests.clustering.skip.startup}">
-    <create-cluster-node conf="cluster-${jboss-junit-configuration}-SYNC-0"/>
-    <create-cluster-node conf="cluster-${jboss-junit-configuration}-SYNC-1"/>
+  	
+  	 <!-- Default configuration to build the test config from -->
+  	 <property name="baseconf" value="all"/>
+  	
+  	 <create-cluster-node-from-baseconf conf="cluster-${jboss-junit-configuration}-SYNC-0" baseconf="${baseconf}"/>
+    <create-cluster-node-from-baseconf conf="cluster-${jboss-junit-configuration}-SYNC-1" baseconf="${baseconf}"/>
 
     <echo message="Modifying the node0 and node1 Tomcat configuration for JK"/>
     <http-cluster-node-config-change conf="cluster-${jboss-junit-configuration}-SYNC-0"/>
@@ -302,8 +310,12 @@
   </target>
 
   <target name="tests-clustering-field-sync-configure" unless="${tests.clustering.skip.startup}">
-    <create-cluster-node conf="cluster-field-${jboss-junit-configuration}-SYNC-0"/>
-    <create-cluster-node conf="cluster-field-${jboss-junit-configuration}-SYNC-1"/>
+  	 
+  	 <!-- Default configuration to build the test config from -->
+  	 <property name="baseconf" value="all"/>
+  	   
+  	 <create-cluster-node-from-baseconf conf="cluster-field-${jboss-junit-configuration}-SYNC-0" baseconf="${baseconf}"/>
+    <create-cluster-node-from-baseconf conf="cluster-field-${jboss-junit-configuration}-SYNC-1" baseconf="${baseconf}"/>
 
     <echo message="Modifying the node0 and node1 Tomcat configuration for JK"/>
     <http-cluster-node-config-change conf="cluster-field-${jboss-junit-configuration}-SYNC-0"/>
@@ -311,8 +323,12 @@
   </target>
 
   <target name="tests-clustering-br-configure" unless="${tests.clustering.skip.startup}">
-    <create-cluster-node conf="cluster-${jboss-junit-configuration}-BR-0"/>
-    <create-cluster-node conf="cluster-${jboss-junit-configuration}-BR-1"/>
+    
+  	 <!-- Default configuration to build the test config from -->
+  	 <property name="baseconf" value="all"/>
+  	   
+  	 <create-cluster-node-from-baseconf conf="cluster-${jboss-junit-configuration}-BR-0" baseconf="${baseconf}"/>
+    <create-cluster-node-from-baseconf conf="cluster-${jboss-junit-configuration}-BR-1" baseconf="${baseconf}"/>
 
     <echo message="Modifying the node0 and node1 Tomcat configuration for JK"/>
     <http-cluster-node-config-change conf="cluster-${jboss-junit-configuration}-BR-0"/>
@@ -320,8 +336,12 @@
   </target>
 
   <target name="tests-clustering-field-br-configure" unless="${tests.clustering.skip.startup}">
-    <create-cluster-node conf="cluster-field-${jboss-junit-configuration}-BR-0"/>
-    <create-cluster-node conf="cluster-field-${jboss-junit-configuration}-BR-1"/>
+  	 
+  	 <!-- Default configuration to build the test config from -->
+  	 <property name="baseconf" value="all"/>
+  	   
+  	 <create-cluster-node-from-baseconf conf="cluster-field-${jboss-junit-configuration}-BR-0" baseconf="${baseconf}"/>
+    <create-cluster-node-from-baseconf conf="cluster-field-${jboss-junit-configuration}-BR-1" baseconf="${baseconf}"/>
 
     <echo message="Modifying the node0 and node1 Tomcat configuration for JK"/>
     <http-cluster-node-config-change conf="cluster-field-${jboss-junit-configuration}-BR-0"/>
@@ -352,12 +372,17 @@
   </target>  
 
   <target name="tests-clustered-profileservice">
-
+  	 
+  	 <!-- Default jgroups stack to use -->
+  	 <property name="jboss-junit-configuration" value="udp"/>
+  	 <!-- Default configuration to build the test config from -->
+  	 <property name="baseconf" value="all"/>
+  	    
 	 <mkdir dir="${build.reports}"/>
 	 <mkdir dir="${build.testlog}"/>
 	    
-  	 <create-profileservice-config conf="cluster-profilesvc-0" baseconf="all"/>    
-	 <create-profileservice-config conf="cluster-profilesvc-1" baseconf="all"/>
+  	 <create-profileservice-config conf="cluster-profilesvc-0" baseconf="${baseconf}"/>    
+	 <create-profileservice-config conf="cluster-profilesvc-1" baseconf="${baseconf}"/>
 		 
   	 <server:start name="cluster-profilesvc-0"/>
      <server:start name="cluster-profilesvc-1"/>
@@ -376,11 +401,16 @@
 
   <target name="tests-clustered-ustxsticky">
 
-    <mkdir dir="${build.reports}"/>
+  	 <!-- Default jgroups stack to use -->
+  	 <property name="jboss-junit-configuration" value="udp"/>
+  	 <!-- Default configuration to build the test config from -->
+  	 <property name="baseconf" value="all"/>
+  	       
+  	 <mkdir dir="${build.reports}"/>
     <mkdir dir="${build.testlog}"/>
       
-    <create-ustxsticky-config newconf="cluster-ustxsticky-0" />    
-    <create-ustxsticky-config newconf="cluster-ustxsticky-1" />
+    <create-ustxsticky-config newconf="cluster-ustxsticky-0" baseconf="${baseconf}" />    
+    <create-ustxsticky-config newconf="cluster-ustxsticky-1" baseconf="${baseconf}" />
      
     <server:start name="cluster-ustxsticky-0"/>
     <server:start name="cluster-ustxsticky-1"/>
@@ -396,7 +426,20 @@
     <server:stop name="cluster-ustxsticky-1"/>
     
   </target> 
+  
+	<target name="tests-clustering-ec2">
 
+	    <!-- Default jgroups stack to use -->
+	    <property name="jboss-junit-configuration" value="tcp"/>
+	    <!-- Default configuration to build the test config from -->
+	    <property name="baseconf" value="cluster-ec2"/>
+	    
+		 <antcall target="tests-clustering" inheritrefs="true"/>
+		 <antcall target="tests-clustered-profileservice" inheritrefs="true"/>
+       <antcall target="tests-clustered-ustxsticky" inheritrefs="true"/>
+       <antcall target="tomcat-sso-clustered-tests" inheritrefs="true"/>
+	</target>
+	
 	<!--
 	  This target gets around the fact that we cannot easily create a set of related 
 	  cluster configs using a single test-configs subdirectory. Rather than pollute the

Modified: branches/Branch_No_Multicast/testsuite/imports/server-config.xml
===================================================================
--- branches/Branch_No_Multicast/testsuite/imports/server-config.xml	2010-06-15 20:50:48 UTC (rev 106074)
+++ branches/Branch_No_Multicast/testsuite/imports/server-config.xml	2010-06-15 20:58:49 UTC (rev 106075)
@@ -305,7 +305,7 @@
          <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
          <sysproperty key="resolve.dns" value="false" />
          <sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
-         <sysproperty key="jboss.multiplexer.stack" value="udp-sync" />
+         <sysproperty key="jboss.default.jgroups.stack" value="udp-sync" />
          <sysproperty key="jboss.messaging.ServerPeerID" value="0" />
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
       </server>
@@ -318,7 +318,7 @@
          <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
          <sysproperty key="resolve.dns" value="false" />
          <sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
-         <sysproperty key="jboss.multiplexer.stack" value="udp-sync" />
+         <sysproperty key="jboss.default.jgroups.stack" value="udp-sync" />
          <sysproperty key="jboss.messaging.ServerPeerID" value="1" />
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
       </server>
@@ -388,7 +388,7 @@
          <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
          <sysproperty key="resolve.dns" value="false" />
          <sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
-         <sysproperty key="jboss.multiplexer.stack" value="udp-sync" />
+         <sysproperty key="jboss.default.jgroups.stack" value="udp-sync" />
          <sysproperty key="jboss.messaging.ServerPeerID" value="0" />
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
          <sysproperty key="node0.bind.address" value="${node0}" />
@@ -403,7 +403,7 @@
          <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
          <sysproperty key="resolve.dns" value="false" />
          <sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
-         <sysproperty key="jboss.multiplexer.stack" value="udp-sync" />
+         <sysproperty key="jboss.default.jgroups.stack" value="udp-sync" />
          <sysproperty key="jboss.messaging.ServerPeerID" value="1" />
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
          <sysproperty key="node0.bind.address" value="${node0}" />
@@ -418,7 +418,7 @@
          <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
          <sysproperty key="resolve.dns" value="false" />
          <sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
-         <sysproperty key="jboss.multiplexer.stack" value="udp-sync" />
+         <sysproperty key="jboss.default.jgroups.stack" value="udp-sync" />
          <sysproperty key="jboss.messaging.ServerPeerID" value="0" />
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
       </server>
@@ -432,7 +432,7 @@
          <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
          <sysproperty key="resolve.dns" value="false" />
          <sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
-         <sysproperty key="jboss.multiplexer.stack" value="udp-sync" />
+         <sysproperty key="jboss.default.jgroups.stack" value="udp-sync" />
          <sysproperty key="jboss.messaging.ServerPeerID" value="1" />
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
       </server>
@@ -446,7 +446,7 @@
          <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
          <sysproperty key="resolve.dns" value="false" />
          <sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
-         <sysproperty key="jboss.multiplexer.stack" value="udp-sync" />
+         <sysproperty key="jboss.default.jgroups.stack" value="udp-sync" />
          <sysproperty key="jboss.messaging.ServerPeerID" value="0" />
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
          <sysproperty key="node0.bind.address" value="${node0}" />
@@ -461,7 +461,7 @@
          <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
          <sysproperty key="resolve.dns" value="false" />
          <sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
-         <sysproperty key="jboss.multiplexer.stack" value="udp-sync" />
+         <sysproperty key="jboss.default.jgroups.stack" value="udp-sync" />
          <sysproperty key="jboss.messaging.ServerPeerID" value="1" />
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
          <sysproperty key="node0.bind.address" value="${node0}" />
@@ -476,7 +476,7 @@
          <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
          <sysproperty key="resolve.dns" value="false" />
          <sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
-         <sysproperty key="jboss.multiplexer.stack" value="udp-sync" />
+         <sysproperty key="jboss.default.jgroups.stack" value="udp-sync" />
          <sysproperty key="jboss.messaging.ServerPeerID" value="0" />
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
       </server>
@@ -490,7 +490,7 @@
          <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
          <sysproperty key="resolve.dns" value="false" />
          <sysproperty key="jgroups.udp.ip_ttl" value="${jbosstest.udp.ip_ttl}" />
-         <sysproperty key="jboss.multiplexer.stack" value="udp-sync" />
+         <sysproperty key="jboss.default.jgroups.stack" value="udp-sync" />
          <sysproperty key="jboss.messaging.ServerPeerID" value="1" />
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
       </server>
@@ -503,12 +503,16 @@
          <sysproperty key="java.net.preferIPv4Stack" value="true" />
          <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
          <sysproperty key="resolve.dns" value="false" />
-         <sysproperty key="jboss.multiplexer.stack" value="tcp" />
+         <sysproperty key="jboss.default.jgroups.stack" value="tcp" />
          <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="jboss.partition.name" value="${partitionName}" />
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
+      	<!-- Allow this config to be used to test the cluster-ec2 profile -->
+         <sysproperty key="jboss.jgroups.s3_ping.access_key" value="${s3_ping.access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.secret_access_key" value="${s3_ping.secret_access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.bucket" value="${s3_ping.bucket}" />
       </server>
       <server name="cluster-tcp-1" host="${node1}">
          <jvmarg value="-Xms128m" />
@@ -519,12 +523,16 @@
          <sysproperty key="java.net.preferIPv4Stack" value="true" />
          <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
          <sysproperty key="resolve.dns" value="false" />
-         <sysproperty key="jboss.multiplexer.stack" value="tcp" />
+         <sysproperty key="jboss.default.jgroups.stack" value="tcp" />
          <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="jboss.partition.name" value="${partitionName}" />
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
+         <!-- Allow this config to be used to test the cluster-ec2 profile -->
+         <sysproperty key="jboss.jgroups.s3_ping.access_key" value="${s3_ping.access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.secret_access_key" value="${s3_ping.secret_access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.bucket" value="${s3_ping.bucket}" />
       </server>
       <server name="cluster-tcp-sync-0" host="${node0}">
          <jvmarg value="-Xms128m" />
@@ -535,10 +543,14 @@
          <sysproperty key="java.net.preferIPv4Stack" value="true" />
          <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
          <sysproperty key="resolve.dns" value="false" />
-         <sysproperty key="jboss.multiplexer.stack" value="tcp-sync" />
+         <sysproperty key="jboss.default.jgroups.stack" value="tcp-sync" />
          <sysproperty key="jgroups.tcpping.initial_hosts" value="${node0}[7650],${node1}[7650]"/>
          <sysproperty key="jboss.messaging.ServerPeerID" value="0" /> 
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
+         <!-- Allow this config to be used to test the cluster-ec2 profile -->
+         <sysproperty key="jboss.jgroups.s3_ping.access_key" value="${s3_ping.access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.secret_access_key" value="${s3_ping.secret_access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.bucket" value="${s3_ping.bucket}" />
       </server>
       <server name="cluster-tcp-sync-1" host="${node1}">
          <jvmarg value="-Xms128m" />
@@ -549,10 +561,14 @@
          <sysproperty key="java.net.preferIPv4Stack" value="true" />
          <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
          <sysproperty key="resolve.dns" value="false" />
-         <sysproperty key="jboss.multiplexer.stack" value="tcp-sync" />
+         <sysproperty key="jboss.default.jgroups.stack" value="tcp-sync" />
          <sysproperty key="jgroups.tcpping.initial_hosts" value="${node0}[7650],${node1}[7650]"/>
          <sysproperty key="jboss.messaging.ServerPeerID" value="1" /> 
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
+         <!-- Allow this config to be used to test the cluster-ec2 profile -->
+         <sysproperty key="jboss.jgroups.s3_ping.access_key" value="${s3_ping.access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.secret_access_key" value="${s3_ping.secret_access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.bucket" value="${s3_ping.bucket}" />
       </server>
       <server name="cluster-field-tcp-0" host="${node0}">
          <jvmarg value="-Xms128m" />
@@ -563,10 +579,14 @@
          <sysproperty key="java.net.preferIPv4Stack" value="true" />
          <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
          <sysproperty key="resolve.dns" value="false" />
-         <sysproperty key="jboss.multiplexer.stack" value="tcp" />
+         <sysproperty key="jboss.default.jgroups.stack" value="tcp" />
          <sysproperty key="jgroups.tcpping.initial_hosts" value="${node0}[7600],${node1}[7600]"/>
          <sysproperty key="jboss.messaging.ServerPeerID" value="0" />
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
+         <!-- Allow this config to be used to test the cluster-ec2 profile -->
+         <sysproperty key="jboss.jgroups.s3_ping.access_key" value="${s3_ping.access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.secret_access_key" value="${s3_ping.secret_access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.bucket" value="${s3_ping.bucket}" />
       </server>
       <server name="cluster-field-tcp-1" host="${node1}">
          <jvmarg value="-Xms128m" />
@@ -577,10 +597,14 @@
          <sysproperty key="java.net.preferIPv4Stack" value="true" />
          <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
          <sysproperty key="resolve.dns" value="false" />
-         <sysproperty key="jboss.multiplexer.stack" value="tcp" />
+         <sysproperty key="jboss.default.jgroups.stack" value="tcp" />
          <sysproperty key="jgroups.tcpping.initial_hosts" value="${node0}[7600],${node1}[7600]"/>
          <sysproperty key="jboss.messaging.ServerPeerID" value="1" />
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
+         <!-- Allow this config to be used to test the cluster-ec2 profile -->
+         <sysproperty key="jboss.jgroups.s3_ping.access_key" value="${s3_ping.access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.secret_access_key" value="${s3_ping.secret_access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.bucket" value="${s3_ping.bucket}" />
       </server>
       <server name="cluster-tcp-SYNC-0" host="${node0}">
          <jvmarg value="-Xms128m" />
@@ -591,10 +615,14 @@
          <sysproperty key="java.net.preferIPv4Stack" value="true" />
          <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
          <sysproperty key="resolve.dns" value="false" />
-         <sysproperty key="jboss.multiplexer.stack" value="tcp-sync" />
+         <sysproperty key="jboss.default.jgroups.stack" value="tcp-sync" />
          <sysproperty key="jgroups.tcpping.initial_hosts" value="${node0}[7650],${node1}[7650]"/>
          <sysproperty key="jboss.messaging.ServerPeerID" value="0" /> 
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
+         <!-- Allow this config to be used to test the cluster-ec2 profile -->
+         <sysproperty key="jboss.jgroups.s3_ping.access_key" value="${s3_ping.access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.secret_access_key" value="${s3_ping.secret_access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.bucket" value="${s3_ping.bucket}" />
       </server>
       <server name="cluster-tcp-SYNC-1" host="${node1}">
          <jvmarg value="-Xms128m" />
@@ -605,10 +633,14 @@
          <sysproperty key="java.net.preferIPv4Stack" value="true" />
          <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
          <sysproperty key="resolve.dns" value="false" />
-         <sysproperty key="jboss.multiplexer.stack" value="tcp-sync" />
+         <sysproperty key="jboss.default.jgroups.stack" value="tcp-sync" />
          <sysproperty key="jgroups.tcpping.initial_hosts" value="${node0}[7650],${node1}[7650]"/>
          <sysproperty key="jboss.messaging.ServerPeerID" value="1" /> 
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
+         <!-- Allow this config to be used to test the cluster-ec2 profile -->
+         <sysproperty key="jboss.jgroups.s3_ping.access_key" value="${s3_ping.access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.secret_access_key" value="${s3_ping.secret_access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.bucket" value="${s3_ping.bucket}" />
       </server>
       <server name="cluster-field-tcp-SYNC-0" host="${node0}">
          <jvmarg value="-Xms128m" />
@@ -619,10 +651,14 @@
          <sysproperty key="java.net.preferIPv4Stack" value="true" />
          <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
          <sysproperty key="resolve.dns" value="false" />
-         <sysproperty key="jboss.multiplexer.stack" value="tcp-sync" />
+         <sysproperty key="jboss.default.jgroups.stack" value="tcp-sync" />
          <sysproperty key="jgroups.tcpping.initial_hosts" value="${node0}[7650],${node1}[7650]"/>
          <sysproperty key="jboss.messaging.ServerPeerID" value="0" />
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
+         <!-- Allow this config to be used to test the cluster-ec2 profile -->
+         <sysproperty key="jboss.jgroups.s3_ping.access_key" value="${s3_ping.access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.secret_access_key" value="${s3_ping.secret_access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.bucket" value="${s3_ping.bucket}" />
       </server>
       <server name="cluster-field-tcp-SYNC-1" host="${node1}">
          <jvmarg value="-Xms128m" />
@@ -633,10 +669,14 @@
          <sysproperty key="java.net.preferIPv4Stack" value="true" />
          <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
          <sysproperty key="resolve.dns" value="false" />
-         <sysproperty key="jboss.multiplexer.stack" value="tcp-sync" />
+         <sysproperty key="jboss.default.jgroups.stack" value="tcp-sync" />
          <sysproperty key="jgroups.tcpping.initial_hosts" value="${node0}[7650],${node1}[7650]"/>
          <sysproperty key="jboss.messaging.ServerPeerID" value="1" /> 
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
+         <!-- Allow this config to be used to test the cluster-ec2 profile -->
+         <sysproperty key="jboss.jgroups.s3_ping.access_key" value="${s3_ping.access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.secret_access_key" value="${s3_ping.secret_access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.bucket" value="${s3_ping.bucket}" />
       </server>
       <server name="cluster-tcp-BR-0" host="${node0}">
          <jvmarg value="-Xms128m" />
@@ -647,10 +687,14 @@
          <sysproperty key="java.net.preferIPv4Stack" value="true" />
          <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
          <sysproperty key="resolve.dns" value="false" />
-         <sysproperty key="jboss.multiplexer.stack" value="tcp-sync" />
+         <sysproperty key="jboss.default.jgroups.stack" value="tcp-sync" />
          <sysproperty key="jgroups.tcpping.initial_hosts" value="${node0}[7650],${node1}[7650]"/>
          <sysproperty key="jboss.messaging.ServerPeerID" value="0" /> 
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
+         <!-- Allow this config to be used to test the cluster-ec2 profile -->
+         <sysproperty key="jboss.jgroups.s3_ping.access_key" value="${s3_ping.access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.secret_access_key" value="${s3_ping.secret_access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.bucket" value="${s3_ping.bucket}" />
       </server>
       <server name="cluster-tcp-BR-1" host="${node1}">
          <jvmarg value="-Xms128m" />
@@ -661,10 +705,14 @@
          <sysproperty key="java.net.preferIPv4Stack" value="true" />
          <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
          <sysproperty key="resolve.dns" value="false" />
-         <sysproperty key="jboss.multiplexer.stack" value="tcp-sync" />
+         <sysproperty key="jboss.default.jgroups.stack" value="tcp-sync" />
          <sysproperty key="jgroups.tcpping.initial_hosts" value="${node0}[7650],${node1}[7650]"/>
          <sysproperty key="jboss.messaging.ServerPeerID" value="1" /> 
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
+         <!-- Allow this config to be used to test the cluster-ec2 profile -->
+         <sysproperty key="jboss.jgroups.s3_ping.access_key" value="${s3_ping.access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.secret_access_key" value="${s3_ping.secret_access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.bucket" value="${s3_ping.bucket}" />
       </server>
       <server name="cluster-field-tcp-BR-0" host="${node0}">
          <jvmarg value="-Xms128m" />
@@ -675,10 +723,14 @@
          <sysproperty key="java.net.preferIPv4Stack" value="true" />
          <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
          <sysproperty key="resolve.dns" value="false" />
-         <sysproperty key="jboss.multiplexer.stack" value="tcp-sync" />
+         <sysproperty key="jboss.default.jgroups.stack" value="tcp-sync" />
          <sysproperty key="jgroups.tcpping.initial_hosts" value="${node0}[7650],${node1}[7650]"/>
          <sysproperty key="jboss.messaging.ServerPeerID" value="0" /> 
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
+         <!-- Allow this config to be used to test the cluster-ec2 profile -->
+         <sysproperty key="jboss.jgroups.s3_ping.access_key" value="${s3_ping.access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.secret_access_key" value="${s3_ping.secret_access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.bucket" value="${s3_ping.bucket}" />
       </server>
       <server name="cluster-field-tcp-BR-1" host="${node1}">
          <jvmarg value="-Xms128m" />
@@ -689,10 +741,14 @@
          <sysproperty key="java.net.preferIPv4Stack" value="true" />
          <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
          <sysproperty key="resolve.dns" value="false" />
-         <sysproperty key="jboss.multiplexer.stack" value="tcp-sync" />
+         <sysproperty key="jboss.default.jgroups.stack" value="tcp-sync" />
          <sysproperty key="jgroups.tcpping.initial_hosts" value="${node0}[7650],${node1}[7650]"/>
          <sysproperty key="jboss.messaging.ServerPeerID" value="1" /> 
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
+         <!-- Allow this config to be used to test the cluster-ec2 profile -->
+         <sysproperty key="jboss.jgroups.s3_ping.access_key" value="${s3_ping.access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.secret_access_key" value="${s3_ping.secret_access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.bucket" value="${s3_ping.bucket}" />
       </server>
     <server name="cluster-tcpgossip-0" host="${node0}">
        <jvmarg value="-Xms128m" />
@@ -702,7 +758,7 @@
        <sysproperty key="java.net.preferIPv4Stack" value="true" />
        <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
        <sysproperty key="resolve.dns" value="false" />
-       <sysproperty key="jboss.multiplexer.stack" value="tcpgossip" />
+       <sysproperty key="jboss.default.jgroups.stack" value="tcpgossip" />
        <!-- host and port GossipRouter mbean is listening on -->
        <sysproperty key="jgroups.tcpgossip.initial_hosts" value="${node0}[12000]"/>
        <sysproperty key="jboss.messaging.ServerPeerID" value="0" /> 
@@ -716,7 +772,7 @@
        <sysproperty key="java.net.preferIPv4Stack" value="true" />
        <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
        <sysproperty key="resolve.dns" value="false" />
-       <sysproperty key="jboss.multiplexer.stack" value="tcpgossip" />
+       <sysproperty key="jboss.default.jgroups.stack" value="tcpgossip" />
        <!-- host and port GossipRouter mbean is listening on -->
        <sysproperty key="jgroups.tcpgossip.initial_hosts" value="${node0}[12000]"/>
        <sysproperty key="jboss.messaging.ServerPeerID" value="1" /> 
@@ -730,7 +786,7 @@
        <sysproperty key="java.net.preferIPv4Stack" value="true" />
        <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
        <sysproperty key="resolve.dns" value="false" />
-       <sysproperty key="jboss.multiplexer.stack" value="tcpgossip-sync" />
+       <sysproperty key="jboss.default.jgroups.stack" value="tcpgossip-sync" />
        <!-- host and port GossipRouter mbean is listening on -->
        <sysproperty key="jgroups.tcpgossip.initial_hosts" value="${node0}[12000]"/>
        <sysproperty key="jboss.messaging.ServerPeerID" value="0" /> 
@@ -744,7 +800,7 @@
        <sysproperty key="java.net.preferIPv4Stack" value="true" />
        <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
        <sysproperty key="resolve.dns" value="false" />
-       <sysproperty key="jboss.multiplexer.stack" value="tcpgossip-sync" />
+       <sysproperty key="jboss.default.jgroups.stack" value="tcpgossip-sync" />
        <!-- host and port GossipRouter mbean is listening on -->
        <sysproperty key="jgroups.tcpgossip.initial_hosts" value="${node0}[12000]"/>
        <sysproperty key="jboss.messaging.ServerPeerID" value="1" /> 
@@ -758,7 +814,7 @@
        <sysproperty key="java.net.preferIPv4Stack" value="true" />
        <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
        <sysproperty key="resolve.dns" value="false" />
-       <sysproperty key="jboss.multiplexer.stack" value="tcpgossip" />
+       <sysproperty key="jboss.default.jgroups.stack" value="tcpgossip" />
        <!-- host and port GossipRouter mbean is listening on -->
        <sysproperty key="jgroups.tcpgossip.initial_hosts" value="${node0}[12000]"/>
        <sysproperty key="jboss.messaging.ServerPeerID" value="0" /> 
@@ -772,7 +828,7 @@
        <sysproperty key="java.net.preferIPv4Stack" value="true" />
        <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
        <sysproperty key="resolve.dns" value="false" />
-       <sysproperty key="jboss.multiplexer.stack" value="tcpgossip" />
+       <sysproperty key="jboss.default.jgroups.stack" value="tcpgossip" />
        <!-- host and port GossipRouter mbean is listening on -->
        <sysproperty key="jgroups.tcpgossip.initial_hosts" value="${node0}[12000]"/>
        <sysproperty key="jboss.messaging.ServerPeerID" value="1" /> 
@@ -786,7 +842,7 @@
        <sysproperty key="java.net.preferIPv4Stack" value="true" />
        <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
        <sysproperty key="resolve.dns" value="false" />
-       <sysproperty key="jboss.multiplexer.stack" value="tcpgossip-sync" />
+       <sysproperty key="jboss.default.jgroups.stack" value="tcpgossip-sync" />
        <!-- host and port GossipRouter mbean is listening on -->
        <sysproperty key="jgroups.tcpgossip.initial_hosts" value="${node0}[12000]"/>
        <sysproperty key="jboss.messaging.ServerPeerID" value="0" /> 
@@ -800,7 +856,7 @@
        <sysproperty key="java.net.preferIPv4Stack" value="true" />
        <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
        <sysproperty key="resolve.dns" value="false" />
-       <sysproperty key="jboss.multiplexer.stack" value="tcpgossip-sync" />
+       <sysproperty key="jboss.default.jgroups.stack" value="tcpgossip-sync" />
        <!-- host and port GossipRouter mbean is listening on -->
        <sysproperty key="jgroups.tcpgossip.initial_hosts" value="${node0}[12000]"/>
        <sysproperty key="jboss.messaging.ServerPeerID" value="1" /> 
@@ -814,7 +870,7 @@
        <sysproperty key="java.net.preferIPv4Stack" value="true" />
        <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
        <sysproperty key="resolve.dns" value="false" />
-       <sysproperty key="jboss.multiplexer.stack" value="tcpgossip-sync" />
+       <sysproperty key="jboss.default.jgroups.stack" value="tcpgossip-sync" />
        <!-- host and port GossipRouter mbean is listening on -->
        <sysproperty key="jgroups.tcpgossip.initial_hosts" value="${node0}[12000]"/>
        <sysproperty key="jboss.messaging.ServerPeerID" value="0" /> 
@@ -828,7 +884,7 @@
        <sysproperty key="java.net.preferIPv4Stack" value="true" />
        <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
        <sysproperty key="resolve.dns" value="false" />
-       <sysproperty key="jboss.multiplexer.stack" value="tcpgossip-sync" />
+       <sysproperty key="jboss.default.jgroups.stack" value="tcpgossip-sync" />
        <!-- host and port GossipRouter mbean is listening on -->
        <sysproperty key="jgroups.tcpgossip.initial_hosts" value="${node0}[12000]"/>
        <sysproperty key="jboss.messaging.ServerPeerID" value="1" /> 
@@ -842,7 +898,7 @@
        <sysproperty key="java.net.preferIPv4Stack" value="true" />
        <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
        <sysproperty key="resolve.dns" value="false" />
-       <sysproperty key="jboss.multiplexer.stack" value="tcpgossip-sync" />
+       <sysproperty key="jboss.default.jgroups.stack" value="tcpgossip-sync" />
        <!-- host and port GossipRouter mbean is listening on -->
        <sysproperty key="jgroups.tcpgossip.initial_hosts" value="${node0}[12000]"/>
        <sysproperty key="jboss.messaging.ServerPeerID" value="0" /> 
@@ -856,7 +912,7 @@
        <sysproperty key="java.net.preferIPv4Stack" value="true" />
        <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
        <sysproperty key="resolve.dns" value="false" />
-       <sysproperty key="jboss.multiplexer.stack" value="tcpgossip-sync" />
+       <sysproperty key="jboss.default.jgroups.stack" value="tcpgossip-sync" />
        <!-- host and port GossipRouter mbean is listening on -->
        <sysproperty key="jgroups.tcpgossip.initial_hosts" value="${node0}[12000]"/>
        <sysproperty key="jboss.messaging.ServerPeerID" value="1" /> 
@@ -871,9 +927,13 @@
          <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
          <sysproperty key="resolve.dns" value="false" />
          <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="xb.builder.useUnorderedSequence" value="true" />
+         <!-- Allow this config to be used to test the cluster-ec2 profile -->
+         <sysproperty key="jboss.default.jgroups.stack" value="${jboss-junit-configuration}" />
+         <sysproperty key="jboss.jgroups.s3_ping.access_key" value="${s3_ping.access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.secret_access_key" value="${s3_ping.secret_access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.bucket" value="${s3_ping.bucket}" />
       </server>
       <server name="tomcat-sso-cluster1" host="${node1}">
          <jvmarg value="-Xms128m" />
@@ -884,9 +944,13 @@
          <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
          <sysproperty key="resolve.dns" value="false" />
          <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="xb.builder.useUnorderedSequence" value="true" />
+         <!-- Allow this config to be used to test the cluster-ec2 profile -->
+         <sysproperty key="jboss.default.jgroups.stack" value="${jboss-junit-configuration}" />
+         <sysproperty key="jboss.jgroups.s3_ping.access_key" value="${s3_ping.access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.secret_access_key" value="${s3_ping.secret_access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.bucket" value="${s3_ping.bucket}" />
       </server>
       <server name="binding-manager1" host="${node0}" httpPort="8180" rmiPort="1199">
 
@@ -1020,6 +1084,11 @@
          <sysproperty key="jboss.messaging.ServerPeerID" value="0" />
          <sysproperty key="jboss.partition.name" value="${partitionName}"/>
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
+         <!-- Allow this config to be used to test the cluster-ec2 profile -->
+         <sysproperty key="jboss.default.jgroups.stack" value="${jboss-junit-configuration}" />
+         <sysproperty key="jboss.jgroups.s3_ping.access_key" value="${s3_ping.access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.secret_access_key" value="${s3_ping.secret_access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.bucket" value="${s3_ping.bucket}" />
       </server>
       <server name="cluster-profilesvc-1" host="${node1}">
          <jvmarg value="-Xms128m" />
@@ -1034,6 +1103,11 @@
          <sysproperty key="jboss.messaging.ServerPeerID" value="1" />
          <sysproperty key="jboss.partition.name" value="${partitionName}"/>
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
+         <!-- Allow this config to be used to test the cluster-ec2 profile -->
+         <sysproperty key="jboss.default.jgroups.stack" value="${jboss-junit-configuration}" />
+         <sysproperty key="jboss.jgroups.s3_ping.access_key" value="${s3_ping.access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.secret_access_key" value="${s3_ping.secret_access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.bucket" value="${s3_ping.bucket}" />
       </server>
       <server name="cluster-ustxsticky-0" host="${node0}">
          <jvmarg value="-Xms128m" />
@@ -1048,6 +1122,11 @@
          <sysproperty key="jboss.messaging.ServerPeerID" value="0" />
          <sysproperty key="jboss.partition.name" value="${partitionName}"/>
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
+         <!-- Allow this config to be used to test the cluster-ec2 profile -->
+         <sysproperty key="jboss.default.jgroups.stack" value="${jboss-junit-configuration}" />
+         <sysproperty key="jboss.jgroups.s3_ping.access_key" value="${s3_ping.access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.secret_access_key" value="${s3_ping.secret_access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.bucket" value="${s3_ping.bucket}" />
       </server>
       <server name="cluster-ustxsticky-1" host="${node1}">
          <jvmarg value="-Xms128m" />
@@ -1062,6 +1141,11 @@
          <sysproperty key="jboss.messaging.ServerPeerID" value="1" />
          <sysproperty key="jboss.partition.name" value="${partitionName}"/>
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
+         <!-- Allow this config to be used to test the cluster-ec2 profile -->
+         <sysproperty key="jboss.default.jgroups.stack" value="${jboss-junit-configuration}" />
+         <sysproperty key="jboss.jgroups.s3_ping.access_key" value="${s3_ping.access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.secret_access_key" value="${s3_ping.secret_access_key}" />
+         <sysproperty key="jboss.jgroups.s3_ping.bucket" value="${s3_ping.bucket}" />
       </server>
       <server name="springdeployer" host="${node0}">
          <jvmarg value="-Xms128m" />
@@ -1094,6 +1178,7 @@
            <sysproperty key="java.endorsed.dirs" value="${jboss.dist}/lib/endorsed" />
            <sysproperty key="java.net.preferIPv4Stack" value="true" />
            <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
+           <sysproperty key="jboss.default.jgroups.stack" value="${jboss-junit-configuration}" />
       </server>
        	
       <server name="jbm-cluster2" host="${node1}">
@@ -1108,6 +1193,7 @@
             <sysproperty key="java.net.preferIPv4Stack" value="true" />
     	   <sysproperty key="jboss.messaging.ServerPeerID" value="1" />
          <sysproperty key="xb.builder.useUnorderedSequence" value="true" />
+         <sysproperty key="jboss.default.jgroups.stack" value="${jboss-junit-configuration}" />
       </server>
 
       <server name="web" host="${node0}" serverUrl="${node0.jndi.http.url}">
@@ -1240,17 +1326,16 @@
          </exec>
       </sequential>
    </macrodef>
-
-
-   <!-- A macro for creating a test cluster config -->
-   <macrodef name="create-cluster-node"
-      description="Create a simplified cluster configuration">
+   
+	<macrodef name="create-cluster-node-from-baseconf"
+         description="Create a simplified cluster configuration">
       <attribute name="conf"/>
+      <attribute name="baseconf"/>
    	<sequential>
          <delete dir="${jboss.dist}/server/@{conf}" failonerror="false"/>
          <echo message="creating @{conf} config, jboss.dist=${jboss.dist}"/>
          <copy todir="${jboss.dist}/server/@{conf}">
-            <fileset dir="${jboss.dist}/server/all">
+            <fileset dir="${jboss.dist}/server/@{baseconf}">
                <include name="conf/**"/>
                <include name="deployers/**"/>
                <include name="deploy/**"/>
@@ -1265,6 +1350,16 @@
         </copy>
       </sequential>
    </macrodef>
+
+   <!-- A macro for creating a test cluster config -->
+   <macrodef name="create-cluster-node"
+      description="Create a simplified cluster configuration">
+      
+      <attribute name="conf"/>
+   	<sequential>
+   	   <create-cluster-node-from-baseconf conf="@{conf}" baseconf="all"/>
+   	</sequential>
+   </macrodef>
    
 	<macrodef name="create-bootstrapdependencies-config"
 		description="Create a configuration based on the 'all' profile with bootstrap dependencies test's SAR">
@@ -1310,7 +1405,7 @@
    <macrodef name="create-profileservice-config"
       description="Create a configuration with the full features profile service">
       <attribute name="conf"/>
-   	  <attribute name="baseconf"/>
+   	<attribute name="baseconf"/>
       <sequential>
          <delete dir="${jboss.dist}/server/@{conf}" failonerror="false"/>
          <echo message="creating @{conf} config, jboss.dist=${jboss.dist}"/>
@@ -1378,8 +1473,9 @@
    <macrodef name="create-cluster-sso-node"
 	      description="Create a simplified clustered-sso configuration">
 	   <attribute name="newconf"/>
+   	<attribute name="baseconf"/>
    	<sequential>
-	    <create-config baseconf="all" newconf="@{newconf}"
+	    <create-config baseconf="@{baseconf}" newconf="@{newconf}"
 	      newconf-src="tomcat-sso-cluster">
 	      <patternset>
             <include name="conf/**"/>
@@ -1397,8 +1493,9 @@
    <macrodef name="create-ustxsticky-config"
         description="Create a simplified clustered-ustxsticky configuration">
      <attribute name="newconf"/>
+     <attribute name="baseconf"/>
      <sequential>
-       <create-config baseconf="all" newconf="@{newconf}"
+       <create-config baseconf="@{baseconf}" newconf="@{newconf}"
         newconf-src="ustxsticky">
          <patternset>
             <include name="conf/**"/>

Modified: branches/Branch_No_Multicast/testsuite/src/resources/cluster/hasingleton/electionpolicy/ha-electionpolicy-jboss-beans.xml
===================================================================
--- branches/Branch_No_Multicast/testsuite/src/resources/cluster/hasingleton/electionpolicy/ha-electionpolicy-jboss-beans.xml	2010-06-15 20:50:48 UTC (rev 106074)
+++ branches/Branch_No_Multicast/testsuite/src/resources/cluster/hasingleton/electionpolicy/ha-electionpolicy-jboss-beans.xml	2010-06-15 20:58:49 UTC (rev 106075)
@@ -271,7 +271,7 @@
            </bean>
         </property>
         
-        <property name="multiplexerStack">${jboss.multiplexer.stack:udp}</property>
+        <property name="multiplexerStack">${jboss.default.jgroups.stack:udp}</property>
 
         <!-- Valid isolation levels are 
                               SERIALIZABLE

Modified: branches/Branch_No_Multicast/testsuite/src/resources/cluster/partition/jboss-beans.xml
===================================================================
--- branches/Branch_No_Multicast/testsuite/src/resources/cluster/partition/jboss-beans.xml	2010-06-15 20:50:48 UTC (rev 106074)
+++ branches/Branch_No_Multicast/testsuite/src/resources/cluster/partition/jboss-beans.xml	2010-06-15 20:58:49 UTC (rev 106075)
@@ -36,7 +36,7 @@
            </bean>
         </property>
         
-        <property name="multiplexerStack">passexp-${jboss.multiplexer.stack:udp}</property>
+        <property name="multiplexerStack">passexp-${jboss.default.jgroups.stack:udp}</property>
 
         <!-- Valid isolation levels are 
                               SERIALIZABLE

Modified: branches/Branch_No_Multicast/testsuite/src/resources/cluster/partition/partition-restart-jboss-beans.xml
===================================================================
--- branches/Branch_No_Multicast/testsuite/src/resources/cluster/partition/partition-restart-jboss-beans.xml	2010-06-15 20:50:48 UTC (rev 106074)
+++ branches/Branch_No_Multicast/testsuite/src/resources/cluster/partition/partition-restart-jboss-beans.xml	2010-06-15 20:58:49 UTC (rev 106075)
@@ -52,7 +52,7 @@
            </bean>
         </property>
         
-        <property name="multiplexerStack">${jboss.multiplexer.stack:udp}</property>
+        <property name="multiplexerStack">${jboss.default.jgroups.stack:udp}</property>
 
         <!-- Valid isolation levels are 
                               SERIALIZABLE



More information about the jboss-cvs-commits mailing list