[infinispan-issues] [JBoss JIRA] Updated: (ISPN-569) IllegalMonitorStateException thrown when releasing the lock

Galder Zamarreno (JIRA) jira-events at lists.jboss.org
Wed Aug 4 09:28:49 EDT 2010


     [ https://jira.jboss.org/browse/ISPN-569?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Galder Zamarreno updated ISPN-569:
----------------------------------

    Workaround Description: If a transaction manager is configured, the issue does not occur.
                Workaround: [Workaround Exists]


> IllegalMonitorStateException thrown when releasing the lock
> -----------------------------------------------------------
>
>                 Key: ISPN-569
>                 URL: https://jira.jboss.org/browse/ISPN-569
>             Project: Infinispan
>          Issue Type: Bug
>          Components: Locking and Concurrency
>    Affects Versions: 4.0.0.Final, 4.1.0.CR2
>            Reporter: Galder Zamarreno
>            Assignee: Galder Zamarreno
>             Fix For: 4.1.0.Final
>
>
> This simple test case:
> public class SkipLockingTest extends SingleCacheManagerTest {
>    private AdvancedCache advancedCache;
>    @Override
>    protected EmbeddedCacheManager createCacheManager() throws Exception {
>       Configuration c = new Configuration();
>       c.setCacheMode(Configuration.CacheMode.LOCAL);
>       EmbeddedCacheManager cacheManager = new DefaultCacheManager(c);
>       advancedCache = cacheManager.getCache().getAdvancedCache();
>       return cacheManager;
>    }
>    public void testExistsInContextPut(Method m) {
>       String name = m.getName();
>       advancedCache.put("k-" + name, "v-" + name);
>       advancedCache.withFlags(Flag.SKIP_LOCKING).put("k-" + name, "v2-" + name);
>    }
> }
> throws:
> java.lang.IllegalMonitorStateException
> 	at java.util.concurrent.locks.ReentrantLock$Sync.tryRelease(ReentrantLock.java:127)
> 	at java.util.concurrent.locks.AbstractQueuedSynchronizer.release(AbstractQueuedSynchronizer.java:1175)
> 	at java.util.concurrent.locks.ReentrantLock.unlock(ReentrantLock.java:431)
> 	at org.infinispan.util.concurrent.locks.containers.AbstractStripedLockContainer.releaseLock(AbstractStripedLockContainer.java:98)
> 	at org.infinispan.util.concurrent.locks.LockManagerImpl.unlock(LockManagerImpl.java:100)
> 	at org.infinispan.interceptors.LockingInterceptor.cleanupLocks(LockingInterceptor.java:289)
> 	at org.infinispan.interceptors.LockingInterceptor.doAfterCall(LockingInterceptor.java:243)
> 	at org.infinispan.interceptors.LockingInterceptor.visitPutKeyValueCommand(LockingInterceptor.java:200)
> 	at org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:76)
> 	at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)
> 	at org.infinispan.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:132)
> 	at org.infinispan.commands.AbstractVisitor.visitPutKeyValueCommand(AbstractVisitor.java:57)
> 	at org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:76)
> 	at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)
> 	at org.infinispan.interceptors.TxInterceptor.enlistWriteAndInvokeNext(TxInterceptor.java:183)
> 	at org.infinispan.interceptors.TxInterceptor.visitPutKeyValueCommand(TxInterceptor.java:132)
> 	at org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:76)
> 	at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)
> 	at org.infinispan.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:58)
> 	at org.infinispan.interceptors.InvocationContextInterceptor.handleDefault(InvocationContextInterceptor.java:39)
> 	at org.infinispan.commands.AbstractVisitor.visitPutKeyValueCommand(AbstractVisitor.java:57)
> 	at org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:76)
> 	at org.infinispan.interceptors.InterceptorChain.invoke(InterceptorChain.java:271)
> 	at org.infinispan.CacheDelegate.put(CacheDelegate.java:426)
> 	at org.infinispan.CacheSupport.put(CacheSupport.java:28)
> 	at org.infinispan.api.SkipLockingTest.testExistsInContextPut(SkipLockingTest.java:41)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the infinispan-issues mailing list