[
https://issues.apache.org/jira/browse/GEODE-6638?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16819377#comment-16819377
]
ASF subversion and git services commented on GEODE-6638:
--------------------------------------------------------
Commit 62b8c22c5701236f14a6bd1e4efbc02403db7613 in geode's branch
refs/heads/develop from pivotal-eshu
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=62b8c22 ]
GEODE-6638: do not fail with IllegalMonitorStateException during cache close
(#3451)
> IllegalMonitorStateException could be thrown during cache close with
> concurrent committing transactions
> -------------------------------------------------------------------------------------------------------
>
> Key: GEODE-6638
> URL: https://issues.apache.org/jira/browse/GEODE-6638
> Project: Geode
> Issue Type: Bug
> Components: transactions
> Affects Versions: 1.1.0
> Reporter: Eric Shu
> Assignee: Eric Shu
> Priority: Major
> Time Spent: 20m
> Remaining Estimate: 0h
>
> This could occur when a client transaction is being committed and locks are
> hold by a thread. Another thread is concurrently closing the cache and try to
> release the resources (including the transactions) and could hit this issue.
> java.lang.IllegalMonitorStateException: attempt to unlock read lock, not
> locked by current thread
> at
> java.util.concurrent.locks.ReentrantReadWriteLock$Sync.unmatchedUnlockException(ReentrantReadWriteLock.java:444)
> at
> java.util.concurrent.locks.ReentrantReadWriteLock$Sync.tryReleaseShared(ReentrantReadWriteLock.java:428)
> at
> java.util.concurrent.locks.AbstractQueuedSynchronizer.releaseShared(AbstractQueuedSynchronizer.java:1341)
> at
> java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock.unlock(ReentrantReadWriteLock.java:881)
> at
> org.apache.geode.internal.util.concurrent.StoppableReentrantReadWriteLock$StoppableReadLock.unlock(StoppableReentrantReadWriteLock.java:144)
> at
> org.apache.geode.internal.cache.locks.TXLockServiceImpl.releaseRecoveryReadLock(TXLockServiceImpl.java:270)
> at
> org.apache.geode.internal.cache.locks.TXLockServiceImpl.release(TXLockServiceImpl.java:237)
> at
> org.apache.geode.internal.cache.TXLockRequest.releaseDistributed(TXLockRequest.java:109)
> at
> org.apache.geode.internal.cache.TXLockRequest.cleanup(TXLockRequest.java:142)
> at org.apache.geode.internal.cache.TXState.doCleanup(TXState.java:886)
> at org.apache.geode.internal.cache.TXState.cleanup(TXState.java:872)
> at org.apache.geode.internal.cache.TXState.close(TXState.java:858)
> at
> org.apache.geode.internal.cache.TXStateProxyImpl.close(TXStateProxyImpl.java:924)
> at
> org.apache.geode.internal.cache.TXManagerImpl.removeHostedTXStatesForClients(TXManagerImpl.java:1076)
> at
> org.apache.geode.internal.cache.CacheServerImpl.stop(CacheServerImpl.java:484)
> at
> org.apache.geode.internal.cache.GemFireCacheImpl.stopServers(GemFireCacheImpl.java:2633)
> at
> org.apache.geode.internal.cache.GemFireCacheImpl.close(GemFireCacheImpl.java:2213)
> at
> org.apache.geode.distributed.internal.InternalDistributedSystem.disconnect(InternalDistributedSystem.java:1363)
> at
> org.apache.geode.distributed.internal.InternalDistributedSystem.disconnect(InternalDistributedSystem.java:1026)
> at hydra.RemoteTestModule$3.run(RemoteTestModule.java:416)
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)