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#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...