"jacek187" wrote : 
  | In my opinion TreeCache is yet NOT READY for production use. Probably it 
works in simple single-thread applications, but in real situations, with many 
concurent threads TreeCache dosen't work correctly...
  | 

No, more specifically, it IS ready for production use in multi threaded 
systems, but cleary does NOT behave well when used with a transaction manager 
that cleans up timed out transactions in a separate thread - specifically 
WebLogic's TM.  This is evident in some of the JIRAs you have raised (such as 
JBCACHE-923).  

The solution to this problem is unfortunately not that straightforward, since 
locks in JBC are obtained either on the Thread (in the case of non-tx 
operation) or a GlobalTransaction (in the case of running within a tx).  
Implicit in the design is that only one thread would ever use a 
GlobalTransaction object at a given time, and this is where it all breaks down 
when you have a TM that performs rollbacks in a separate thread.  It opens up 
the possibility for the TM to be trying to obtain locks on a node to roll back, 
while your app thread tries to obtain locks on the same node to write to it.  
This WILL be allowed since they both pertain to the same GlobalTransaction 
object.

Jacek, I'd recommend joining the JBoss Cache dev mail list - we will be 
discussing this problem in more detail there.

Cheers,
Manik

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

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4085034
_______________________________________________
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to