[jboss-cvs] JBossAS SVN: r107876 - branches/infinispan-int/cluster/src/resources/infinispan.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Sat Aug 28 10:39:19 EDT 2010


Author: pferraro
Date: 2010-08-28 10:39:19 -0400 (Sat, 28 Aug 2010)
New Revision: 107876

Modified:
   branches/infinispan-int/cluster/src/resources/infinispan/infinispan-configs.xml
Log:
Copy 2LC cache configs from infinispan-hibernate.

Modified: branches/infinispan-int/cluster/src/resources/infinispan/infinispan-configs.xml
===================================================================
--- branches/infinispan-int/cluster/src/resources/infinispan/infinispan-configs.xml	2010-08-28 11:42:42 UTC (rev 107875)
+++ branches/infinispan-int/cluster/src/resources/infinispan/infinispan-configs.xml	2010-08-28 14:39:19 UTC (rev 107876)
@@ -97,8 +97,6 @@
 
   <!-- Hibernate second-level cache -->
   <infinispan-config name="entity" jndi-name="java:CacheManager/entity">
-    <alias>jboss.cache:service=EJB3EntityTreeCache</alias>
-    <alias>mvcc-shared</alias>
     <infinispan xmlns="urn:infinispan:config:4.0" xsi:schemaLocation="urn:infinispan:config:4.0 http://docs.jboss.org/infinispan/schemas/infinispan-config-4.1.xsd">
       <global>
         <transport clusterName="${jboss.partition.name:DefaultPartition}-entity" distributedSyncTimeout="17500">
@@ -109,25 +107,97 @@
         <globalJmxStatistics enabled="true" allowDuplicateDomains="true"/>
       </global>
       <default>
-        <locking isolationLevel="READ_COMMITTED" lockAcquisitionTimeout="15000" useLockStriping="false" concurrencyLevel="1000"/>
-        <jmxStatistics enabled="true"/>
+        <!-- Used to register JMX statistics in any available MBean server -->
+        <jmxStatistics enabled="false"/>
+      </default>
+      
+      <!-- Default configuration is appropriate for entity/collection caching. -->
+      <namedCache name="entity">
+        <clustering mode="invalidation">
+          <stateRetrieval fetchInMemoryState="false" timeout="20000"/>
+          <sync replTimeout="20000"/>
+        </clustering>
+        <locking isolationLevel="READ_COMMITTED" concurrencyLevel="1000"
+                 lockAcquisitionTimeout="15000" useLockStriping="false" />
+        <!-- Eviction configuration.  WakeupInterval defines how often the eviction thread runs, in milliseconds.  
+             0 means the eviction thread will never run.  A separate executor is used for eviction in each cache. -->
+        <eviction wakeUpInterval="5000" maxEntries="10000" strategy="LRU"/>
+        <expiration maxIdle="100000"/>
         <lazyDeserialization enabled="true"/>
+      </namedCache>
+      
+      <!-- Default configuration is appropriate for entity/collection caching. -->
+      <namedCache name="entity-repeatable">
         <clustering mode="invalidation">
-          <stateRetrieval timeout="20000" fetchInMemoryState="false"/>
+          <stateRetrieval fetchInMemoryState="false" timeout="20000"/>
           <sync replTimeout="20000"/>
         </clustering>
-        <eviction strategy="LRU" wakeUpInterval="5000" maxEntries="10000"/>
+        <!-- Note: 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.
+         -->
+        <locking isolationLevel="REPEATABLE_READ" concurrencyLevel="1000"
+                 lockAcquisitionTimeout="15000" useLockStriping="false"/>
+        <!-- Eviction configuration.  WakeupInterval defines how often the eviction thread runs, in milliseconds.  
+             0 means the eviction thread will never run.  A separate executor is used for eviction in each cache. -->
+        <eviction wakeUpInterval="5000" maxEntries="10000" strategy="LRU"/>
         <expiration maxIdle="100000"/>
-      </default>
-      <namedCache name="local-query">
-        <clustering mode="local"></clustering>
+        <lazyDeserialization enabled="true"/>
       </namedCache>
+      
+      <!-- An alternative configuration for entity/collection caching that uses replication instead of invalidation -->
+      <namedCache name="replicated-entity">
+        <clustering mode="replication">
+          <stateRetrieval fetchInMemoryState="false" timeout="20000"/>
+          <sync replTimeout="20000"/>
+        </clustering>
+        <locking isolationLevel="READ_COMMITTED" concurrencyLevel="1000"
+                 lockAcquisitionTimeout="15000" useLockStriping="false"/>
+        <!-- Eviction configuration.  WakeupInterval defines how often the eviction thread runs, in milliseconds.  
+             0 means the eviction thread will never run.  A separate executor is used for eviction in each cache. -->
+        <eviction wakeUpInterval="5000" maxEntries="10000" strategy="LRU"/>
+        <expiration maxIdle="100000"/>
+        <lazyDeserialization enabled="true"/>
+      </namedCache>
+      
+      <!-- A config appropriate for query caching.  Does not replicate queries. -->
+      <namedCache name="local-query"><!-- Non-replicating query cache -->
+        <locking isolationLevel="READ_COMMITTED" concurrencyLevel="1000"
+                 lockAcquisitionTimeout="15000" useLockStriping="false"/>
+        <!--Eviction configuration.  WakeupInterval defines how often the eviction thread runs, in milliseconds.  0 means
+           the eviction thread will never run.  A separate executor is used for eviction in each cache. -->
+        <eviction wakeUpInterval="5000" maxEntries="10000" strategy="LRU"/>
+        <expiration maxIdle="100000"/>
+      </namedCache>
+      
+      <!-- A query cache that replicates queries.  Replication is asynchronous. -->
       <namedCache name="replicated-query">
-        <clustering mode="replication"></clustering>
+        <clustering mode="replication">
+          <stateRetrieval fetchInMemoryState="false"/>
+          <async/>
+        </clustering>
+        <locking isolationLevel="READ_COMMITTED" concurrencyLevel="1000"
+                 lockAcquisitionTimeout="15000" useLockStriping="false"/>
+        <!--Eviction configuration.  WakeupInterval defines how often the eviction thread runs, in milliseconds.  0 means
+           the eviction thread will never run.  A separate executor is used for eviction in each cache. -->
+        <eviction wakeUpInterval="5000" maxEntries="10000" strategy="LRU"/>
+        <expiration maxIdle="100000"/>
       </namedCache>
+      
+      <!-- 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. -->
       <namedCache name="timestamps">
-        <clustering mode="replication"></clustering>
-        <eviction strategy="NONE" wakeUpInterval="0"/>
+        <clustering mode="replication">
+          <stateRetrieval fetchInMemoryState="true" timeout="20000"/>
+          <async/>
+        </clustering>
+        <locking isolationLevel="READ_COMMITTED" concurrencyLevel="1000"
+                 lockAcquisitionTimeout="15000" useLockStriping="false"/>
+        <lazyDeserialization enabled="true"/>
+        <!--  Don't ever evict modification timestamps -->
+        <eviction wakeUpInterval="0" strategy="NONE"/>
       </namedCache>
     </infinispan>
   </infinispan-config>



More information about the jboss-cvs-commits mailing list