[jbosscache-issues] [JBoss JIRA] Commented: (JBCACHE-1332) Lock in eviction.Region:putNodeEvent()

Yohan Liyanage (JIRA) jira-events at lists.jboss.org
Wed Aug 24 01:50:18 EDT 2011


    [ https://issues.jboss.org/browse/JBCACHE-1332?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12623616#comment-12623616 ] 

Yohan Liyanage commented on JBCACHE-1332:
-----------------------------------------

We are facing the same issue on JBoss 4.2.3.GA, running on Sun JDK 1.6 on a RHEL 5.3. JBoss is clustered with two nodes. 

We are using the JBoss cache version shipped with JBoss 4.2.3, which is,

Version: 	1.4.1.SP9
Codename: 	Cayenne
CVS:      	$Id: Version.java 5474 2008-03-27 21:49:43Z jiwils $
History:  	(see http://jira.jboss.com/jira/browse/JBCACHE for details)

So I assume this is not related to JBCACHE-1316. 

Here's a thread dump I have taken from our servers.


"http-0.0.0.0-8081-6" daemon prio=10 tid=0x000000004a2be000 nid=0x2d61 in Object.wait() [0x0000000047f92000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at java.lang.Object.wait(Object.java:485)
	at EDU.oswego.cs.dl.util.concurrent.BoundedLinkedQueue.put(BoundedLinkedQueue.java:303)
	- locked <0x00002aaad1781de0> (a EDU.oswego.cs.dl.util.concurrent.BoundedLinkedQueue)
	- locked <0x00002aaad1781e20> (a java.lang.Object)
	at org.jboss.cache.eviction.Region.putNodeEvent(Region.java:141)
	at org.jboss.cache.interceptors.EvictionInterceptor.doEventUpdatesOnRegionManager(EvictionInterceptor.java:149)
	at org.jboss.cache.interceptors.EvictionInterceptor.updateNode(EvictionInterceptor.java:122)
	at org.jboss.cache.interceptors.EvictionInterceptor.invoke(EvictionInterceptor.java:97)
	at org.jboss.cache.interceptors.Interceptor.invoke(Interceptor.java:68)
	at org.jboss.cache.interceptors.PessimisticLockInterceptor.invoke(PessimisticLockInterceptor.java:206)
	at org.jboss.cache.interceptors.Interceptor.invoke(Interceptor.java:68)


"http-0.0.0.0-8081-7" daemon prio=10 tid=0x000000004a2c0000 nid=0x2d62 waiting for monitor entry [0x0000000048093000]
   java.lang.Thread.State: BLOCKED (on object monitor)
	at EDU.oswego.cs.dl.util.concurrent.BoundedLinkedQueue.put(BoundedLinkedQueue.java:296)
	- waiting to lock <0x00002aaad1781e20> (a java.lang.Object)
	at org.jboss.cache.eviction.Region.putNodeEvent(Region.java:141)
	at org.jboss.cache.interceptors.EvictionInterceptor.doEventUpdatesOnRegionManager(EvictionInterceptor.java:149)
	at org.jboss.cache.interceptors.EvictionInterceptor.updateNode(EvictionInterceptor.java:122)
	at org.jboss.cache.interceptors.EvictionInterceptor.invoke(EvictionInterceptor.java:97)




"http-0.0.0.0-8081-8" daemon prio=10 tid=0x000000004a2c2000 nid=0x2d63 waiting for monitor entry [0x0000000048194000]
   java.lang.Thread.State: BLOCKED (on object monitor)
	at EDU.oswego.cs.dl.util.concurrent.BoundedLinkedQueue.put(BoundedLinkedQueue.java:296)
	- waiting to lock <0x00002aaad1781e20> (a java.lang.Object)
	at org.jboss.cache.eviction.Region.putNodeEvent(Region.java:141)
	at org.jboss.cache.interceptors.EvictionInterceptor.doEventUpdatesOnRegionManager(EvictionInterceptor.java:149)
	at org.jboss.cache.interceptors.EvictionInterceptor.updateNode(EvictionInterceptor.java:122)
	at org.jboss.cache.interceptors.EvictionInterceptor.invoke(EvictionInterceptor.java:97)
	at org.jboss.cache.interceptors.Interceptor.invoke(Interceptor.java:68)
	at org.jboss.cache.interceptors.PessimisticLockInterceptor.invoke(PessimisticLockInterceptor.java:206)
	at org.jboss.cache.interceptors.Interceptor.invoke(Interceptor.java:68)
	at org.jboss.cache.interceptors.UnlockInterceptor.invoke(UnlockInterceptor.java:32)
	at org.jboss.cache.interceptors.Interceptor.invoke(Interceptor.java:68)
	at org.jboss.cache.interceptors.InvalidationInterceptor.invoke(InvalidationInterceptor.java:60)



> Lock in eviction.Region:putNodeEvent()
> --------------------------------------
>
>                 Key: JBCACHE-1332
>                 URL: https://issues.jboss.org/browse/JBCACHE-1332
>             Project: JBoss Cache
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: Eviction
>    Affects Versions: 1.4.1.SP1
>         Environment: JBoss 4.05
> Hibernate 3.2.6.ga
>            Reporter: Nicolas Lebreton
>            Assignee: Manik Surtani
>            Priority: Critical
>             Fix For: 1.4.X
>
>         Attachments: 2008-04-10-molene.nexotelematics.com_susan_node2_Percentage db connections in use.jpg, 2008-04-25 locktree.svg, jboss-service.xml, ThreadDumps.zip
>
>
> JBoss TreeCache is used as cache provider. Please find attached jboss-service.xml configuration file.
> The second level cache is actitated, and several read-only classes are cacheable:
> 	<cache usage="read-only"/>
> The query cache is activated, and few queries are cacheable: 
> 	<query name="ActorType.listAll.named" cacheable="true">
> 	
> We encounter an issue. It can be reproduced on an environment with only few users connected (less than 10). For those users, screen is refreshed every 30 seconds through Ajax requests.
> Application is running in a cluster. On the other hand, this issue occurs with only one node started. A JBoss is started. Less than 24 hours later, application is becoming unresponsive. JBoss then needs to be recycled. And it works.
> Before stoping the node, I have taken several thread dumps separated by at least 30 seconds. Please find attached 10th, 11th, 25th's output files. We noticed thread locks in these 3 snapshots. The stack trace of the culprit was always the same (please see attached outputs for more details):
> # java.lang.Object:wait
> # waiting on-->EDU.oswego.cs.dl.util.concurrent.BoundedLinkedQueue(0x9331fd60)
> # java.lang.Object:wait(Object.java:474)
> # EDU.oswego.cs.dl.util.concurrent.BoundedLinkedQueue:put
> # locked-->EDU.oswego.cs.dl.util.concurrent.BoundedLinkedQueue(0x9331fd60)
> # locked-->java.lang.Object(0x9331fe78)
> # org.jboss.cache.eviction.Region:putNodeEvent(Region.java:141)
> # org.jboss.cache.interceptors.EvictionInterceptor:doEventUpdatesOnRegionManager(EvictionInterceptor.java:145)
> # org.jboss.cache.interceptors.EvictionInterceptor:updateNode(EvictionInterceptor.java:118)
> # org.jboss.cache.interceptors.EvictionInterceptor:invoke(EvictionInterceptor.java:93)
> Nicolas

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the jbosscache-issues mailing list