[jboss-user] [JBossCache] - how to support treecache transaction in CMT

confuz do-not-reply at jboss.com
Sun Aug 20 22:46:03 EDT 2006


Dear All,
      I used  TreeCache 1.4.0.GA and Jboss 4.0. currently need to support cache transaction in CMT. in the session bean method, the db operation will be rollbacked while cache operation won't when exception is threw.

how to support cache transaction in cmt?

Thanks for any help.

code sample in session bean

  | try{
  |         dboperation
  |         cacheoperation
  |             
  |         }catch(Exception e){
  |             sessionContext.setRollbackOnly();
  |             CCException ee = handleSQLException(e) ;
  |             throw ee;
  |         } finally {
  |             closeConnection(this.getClass().getName(), dbConn);
  |         }
  | 

configuration

  | <server>
  | 
  |     <classpath codebase="./lib" archives="jboss-cache.jar, jgroups.jar"/>
  | 
  | 
  |     <!-- ==================================================================== -->
  |     <!-- Defines TreeCache configuration                                      -->
  |     <!-- ==================================================================== -->
  | 
  |     <mbean code="org.jboss.cache.TreeCache"
  |         name="jboss.cache:service=testTreeCache">
  | 
  |         <depends>jboss:service=Naming</depends>
  |         <depends>jboss:service=TransactionManager</depends>
  | 		<attribute name="UseReplQueue">false</attribute>
  | 
  |         <attribute name="TransactionManagerLookupClass">org.jboss.cache.GenericTransactionManagerLookup</attribute>
  | 
  |         <attribute name="IsolationLevel">REPEATABLE_READ</attribute>
  | 
  |         <attribute name="CacheMode">LOCAL</attribute>
  | 
  |         <attribute name="ClusterName">TreeCache-Cluster</attribute>
  | 
  |         <attribute name="ClusterConfig">
  |             <config>
  |                 <UDP mcast_addr="228.1.2.5" mcast_port="45577"
  |                     ip_ttl="64" ip_mcast="true"
  |                     mcast_send_buf_size="150000" mcast_recv_buf_size="80000"
  |                     ucast_send_buf_size="150000" ucast_recv_buf_size="80000"
  |                     loopback="false"/>
  |                 <PING timeout="2000" num_initial_members="3"
  |                     up_thread="false" down_thread="false"/>
  |                 <MERGE2 min_interval="10000" max_interval="20000"/>
  |                 <FD shun="true" up_thread="true" down_thread="true"/>
  |                 <VERIFY_SUSPECT timeout="1500"
  |                     up_thread="false" down_thread="false"/>
  |                 <pbcast.NAKACK gc_lag="50" retransmit_timeout="600,1200,2400,4800"
  |                     up_thread="false" down_thread="false"/>
  |                 <pbcast.STABLE desired_avg_gossip="20000"
  |                     up_thread="false" down_thread="false"/>
  |                 <UNICAST timeout="600,1200,2400" window_size="100" min_threshold="10"
  |                     down_thread="false"/>
  |                 <FRAG frag_size="8192"
  |                     down_thread="false" up_thread="false"/>
  |                 <pbcast.GMS join_timeout="5000" join_retry_timeout="2000"
  |                     shun="true" print_local_addr="true"/>
  |                 <pbcast.STATE_TRANSFER up_thread="false" down_thread="false"/>
  |             </config>
  |         </attribute>
  | 
  |         <attribute name="InitialStateRetrievalTimeout">20000</attribute>
  | 
  |         <attribute name="SyncReplTimeout">15000</attribute>
  | 
  |         <attribute name="LockAcquisitionTimeout">10000</attribute>
  | 
  | 
  |         <attribute name="EvictionPolicyClass">org.jboss.cache.eviction.LRUPolicy</attribute>
  |         <attribute name="EvictionPolicyConfig">
  |            <config>
  |               <attribute name="wakeUpIntervalSeconds">3</attribute>
  |               <!-- Cache wide default -->
  |               <region name="/_default_">
  |                   <attribute name="maxNodes">5000</attribute>
  |                   <attribute name="timeToLiveSeconds">1000</attribute>
  |               </region>
  |               <region name="/org/jboss/data">
  |                   <attribute name="maxNodes">5000</attribute>
  |                   <attribute name="timeToLiveSeconds">1000</attribute>
  |               </region>
  |               <region name="/test">
  |                   <attribute name="maxNodes">500</attribute>
  |                   <attribute name="timeToLiveSeconds">0</attribute>
  |                   <attrubute name="maxAgeSeconds">0</attrubute>>
  |               </region>
  |            </config>
  |         </attribute>
  |     </mbean>
  | 
  | 
  | </server>
  | 

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3966351#3966351

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3966351



More information about the jboss-user mailing list