[jboss-jira] [JBoss JIRA] (JGRP-1660) LockService hangs during concurrent access (tryLock/tryLock(timeout)/lock/unlock)
Architect SoftWeb.ISD (JIRA)
jira-events at lists.jboss.org
Wed Sep 18 09:28:03 EDT 2013
[ https://issues.jboss.org/browse/JGRP-1660?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12801088#comment-12801088 ]
Architect SoftWeb.ISD edited comment on JGRP-1660 at 9/18/13 9:27 AM:
----------------------------------------------------------------------
Test case is added which is needed to be able to reproduce hanging at the special conditions.
Unfortunately, it was converted to JUnit test because we don't use TestNG.
lock.xml loading is also changed to be relative to test.
was (Author: architect.softweb.isd):
Changed test case is added which needs to be able to reproduce hanging at the special conditions.
Unfortunately, it was converted to JUnit test because we don't use TestNG.
lock.xml loading is also changed to be relative to test.
> LockService hangs during concurrent access (tryLock/tryLock(timeout)/lock/unlock)
> ---------------------------------------------------------------------------------
>
> Key: JGRP-1660
> URL: https://issues.jboss.org/browse/JGRP-1660
> Project: JGroups
> Issue Type: Bug
> Affects Versions: 3.2.4, 3.3.3
> Environment: Intel(R) Core(TM) i5-2310 CPU @ 2.90GHz
> 6GB RAM
> Windows 7
> JRE 1.6.31
> Reporter: Architect SoftWeb.ISD
> Assignee: Bela Ban
> Fix For: 3.3.5, 3.4
>
> Attachments: bla2.java, lock.xml, LockServiceStabilityTestCase.java, LockServiceStabilityTestCase.java, lockservice_stability_testcase.jar
>
>
> We have rather simple test that starts some amount of threads which in turn simultaneously obtain lock through LockService#getLock then perform lock and unlock.
> Each thread works during some time.
> After couple of seconds of work some threads just hang up in Locking$ClientLock(Object).wait() called indirectly from LockService$LockImpl.tryLock().
> Here is stack trace:
> Thread [Thread-ClientImitation-1] (Suspended)
> Object.wait(long) line: not available [native method]
> Locking$ClientLock(Object).wait() line: 485
> Locking$ClientLock.acquireTryLock(long, boolean) line: 1010
> Locking$ClientLock.tryLock() line: 896
> CENTRAL_LOCK(Locking).down(Event) line: 152
> ProtocolStack.down(Event) line: 1025
> JChannel.down(Event) line: 718
> LockService$LockImpl.tryLock() line: 102
> LockServiceStabilityTestCase$ClientImitation.run() line: 167
> Thread.run() line: 662
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list