[JBoss JIRA] (ISPN-2872) CH_UPDATE from new coord may crash rebalance from old coord
by Radim Vansa (JIRA)
[ https://issues.jboss.org/browse/ISPN-2872?page=com.atlassian.jira.plugin.... ]
Radim Vansa commented on ISPN-2872:
-----------------------------------
This time the old REBALANCE_START was crashed by a new CH_UPDATE directly on the new coordinator.
> CH_UPDATE from new coord may crash rebalance from old coord
> -----------------------------------------------------------
>
> Key: ISPN-2872
> URL: https://issues.jboss.org/browse/ISPN-2872
> Project: Infinispan
> Issue Type: Bug
> Components: State transfer
> Affects Versions: 5.2.2.Final
> Reporter: Radim Vansa
> Assignee: Dan Berindei
>
> This happened probably the first time, but the issue is here:
> When old coordinator leaves the cluster, it sends a REBALANCE_START as a goodbye. This will trigger rebalance process on some of the nodes. As we do sync GET_TRANSACTIONS, processing this command may take a while.
> However, new coordinator will send CH_UPDATE, which will change the current topologyId to a higher id. This command is processed in LocalTopologyManagerImpl synchronized on cacheStatus, but rebalance command has already left its synchronized block when it executes handler.rebalance.
> Then, as the old REBALANCE_START tries to call notifyTransactionDataReceived in its finally block, it finds out that the topologyId has increased and throws an exception. But the rebalance is left in inconsistent state (activeTopologyUpdates are non-zero, potentionally waitForState true, DataRehash listener notification not called...).
--
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
11 years, 9 months
[JBoss JIRA] (ISPN-2664) DistSyncCacheStoreNotSharedNotConcurrentTest.testAtomicPutIfAbsentFromNonOwner fails randomly
by Galder Zamarreño (JIRA)
[ https://issues.jboss.org/browse/ISPN-2664?page=com.atlassian.jira.plugin.... ]
Galder Zamarreño resolved ISPN-2664.
------------------------------------
Fix Version/s: (was: 5.3.0.Final)
Resolution: Duplicate Issue
Duplicates ISPN-2619.
> DistSyncCacheStoreNotSharedNotConcurrentTest.testAtomicPutIfAbsentFromNonOwner fails randomly
> ---------------------------------------------------------------------------------------------
>
> Key: ISPN-2664
> URL: https://issues.jboss.org/browse/ISPN-2664
> Project: Infinispan
> Issue Type: Bug
> Components: Distributed Cache
> Reporter: Galder Zamarreño
> Assignee: Galder Zamarreño
> Labels: testsuite_stability
> Attachments: testAtomicPutIfAbsentFromNonOwner-0.log, testAtomicPutIfAbsentFromNonOwner-0.log
>
>
> {code}testAtomicPutIfAbsentFromNonOwner(org.infinispan.distribution.DistSyncCacheStoreNotSharedNotConcurrentTest) Time elapsed: 0.004 sec <<< FAILURE!
> java.lang.AssertionError
> at org.infinispan.distribution.DistSyncCacheStoreNotSharedTest.testAtomicPutIfAbsentFromNonOwner(DistSyncCacheStoreNotSharedTest.java:297)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:80)
> at org.testng.internal.Invoker.invokeMethod(Invoker.java:715)
> at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:907)
> at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1237)
> at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:127)
> at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111)
> at org.testng.TestRunner.privateRun(TestRunner.java:767)
> at org.testng.TestRunner.run(TestRunner.java:617)
> at org.testng.SuiteRunner.runTest(SuiteRunner.java:334)
> at org.testng.SuiteRunner.access$000(SuiteRunner.java:37)
> at org.testng.SuiteRunner$SuiteWorker.run(SuiteRunner.java:368)
> at org.testng.internal.thread.ThreadUtil$2.call(ThreadUtil.java:64)
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
> at java.util.concurrent.FutureTask.run(FutureTask.java:138)
> at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:680){code}
--
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
11 years, 9 months
[JBoss JIRA] (ISPN-2845) CLONE - ISPN000136: Execution error: java.lang.NullPointerException -> JBAS018079: Failed to passivate session
by RH Bugzilla Integration (JIRA)
[ https://issues.jboss.org/browse/ISPN-2845?page=com.atlassian.jira.plugin.... ]
RH Bugzilla Integration commented on ISPN-2845:
-----------------------------------------------
Ladislav Thon <lthon(a)redhat.com> made a comment on [bug 901028|https://bugzilla.redhat.com/show_bug.cgi?id=901028]
Also affects 6.1.0.ER1, see https://jenkins.mw.lab.eng.bos.redhat.com/hudson/job/eap-6x-failover-ejb-...
> CLONE - ISPN000136: Execution error: java.lang.NullPointerException -> JBAS018079: Failed to passivate session
> ---------------------------------------------------------------------------------------------------------------
>
> Key: ISPN-2845
> URL: https://issues.jboss.org/browse/ISPN-2845
> Project: Infinispan
> Issue Type: Bug
> Components: Core API
> Affects Versions: 5.1.8.Final, 5.2.1.Final
> Reporter: Radoslav Husar
> Assignee: Adrian Nistor
> Labels: 5.2.x
> Fix For: 5.2.3.Final, 5.3.0.Final
>
>
> As seen in org.jboss.as.test.clustering.cluster.web.passivation.AttributeBasedSessionPassivationTestCase (SYNC, tcp)
> (test is disabled)
> {noformat}
> 12:38:48,421 ERROR [org.infinispan.interceptors.InvocationContextInterceptor] (ContainerBackgroundProcessor[StandardEngine[jboss.web]]) ISPN000136: Execution error: java.lang.NullPointerException
> at org.infinispan.context.impl.AbstractTxInvocationContext.clearLockedKeys(AbstractTxInvocationContext.java:100)
> at org.infinispan.util.concurrent.locks.LockManagerImpl.unlockAll(LockManagerImpl.java:116)
> at org.infinispan.interceptors.locking.AbstractTxLockingInterceptor.visitEvictCommand(AbstractTxLockingInterceptor.java:86)
> at org.infinispan.commands.write.EvictCommand.acceptVisitor(EvictCommand.java:47)
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116)
> at org.infinispan.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:130)
> at org.infinispan.commands.AbstractVisitor.visitEvictCommand(AbstractVisitor.java:87)
> at org.infinispan.commands.write.EvictCommand.acceptVisitor(EvictCommand.java:47)
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116)
> at org.infinispan.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:130)
> at org.infinispan.commands.AbstractVisitor.visitEvictCommand(AbstractVisitor.java:87)
> at org.infinispan.commands.write.EvictCommand.acceptVisitor(EvictCommand.java:47)
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116)
> at org.infinispan.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:130)
> at org.infinispan.commands.AbstractVisitor.visitEvictCommand(AbstractVisitor.java:87)
> at org.infinispan.commands.write.EvictCommand.acceptVisitor(EvictCommand.java:47)
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116)
> at org.infinispan.interceptors.CacheMgmtInterceptor.visitEvictCommand(CacheMgmtInterceptor.java:86)
> at org.infinispan.commands.write.EvictCommand.acceptVisitor(EvictCommand.java:47)
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116)
> at org.infinispan.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:132)
> at org.infinispan.interceptors.InvocationContextInterceptor.handleDefault(InvocationContextInterceptor.java:91)
> at org.infinispan.commands.AbstractVisitor.visitEvictCommand(AbstractVisitor.java:87)
> at org.infinispan.commands.write.EvictCommand.acceptVisitor(EvictCommand.java:47)
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116)
> at org.infinispan.interceptors.BatchingInterceptor.handleDefault(BatchingInterceptor.java:80)
> at org.infinispan.commands.AbstractVisitor.visitEvictCommand(AbstractVisitor.java:87)
> at org.infinispan.commands.write.EvictCommand.acceptVisitor(EvictCommand.java:47)
> at org.infinispan.interceptors.InterceptorChain.invoke(InterceptorChain.java:345)
> at org.infinispan.CacheImpl.evict(CacheImpl.java:382)
> at org.infinispan.CacheImpl.evict(CacheImpl.java:375)
> at org.infinispan.AbstractDelegatingCache.evict(AbstractDelegatingCache.java:60)
> at org.infinispan.AbstractDelegatingCache.evict(AbstractDelegatingCache.java:60)
> at org.jboss.as.clustering.web.infinispan.DistributedCacheManager$4.invoke(DistributedCacheManager.java:306)
> at org.jboss.as.clustering.web.infinispan.DistributedCacheManager$4.invoke(DistributedCacheManager.java:303)
> at org.jboss.as.clustering.infinispan.invoker.SimpleCacheInvoker.invoke(SimpleCacheInvoker.java:34)
> at org.jboss.as.clustering.infinispan.invoker.BatchCacheInvoker.invoke(BatchCacheInvoker.java:48)
> at org.jboss.as.clustering.infinispan.invoker.RetryingCacheInvoker.invoke(RetryingCacheInvoker.java:81)
> at org.jboss.as.clustering.web.infinispan.DistributedCacheManager$ForceSynchronousCacheInvoker.invoke(DistributedCacheManager.java:531)
> at org.jboss.as.clustering.web.infinispan.DistributedCacheManager.evictSession(DistributedCacheManager.java:310)
> at org.jboss.as.web.session.DistributableSessionManager.processSessionPassivation(DistributableSessionManager.java:511) [jboss-as-web-7.1.3.Final-SNAPSHOT.jar:7.1.3.Final-SNAPSHOT]
> at org.jboss.as.web.session.DistributableSessionManager.access$600(DistributableSessionManager.java:84) [jboss-as-web-7.1.3.Final-SNAPSHOT.jar:7.1.3.Final-SNAPSHOT]
> at org.jboss.as.web.session.DistributableSessionManager$PassivationCheck.passivate(DistributableSessionManager.java:1557) [jboss-as-web-7.1.3.Final-SNAPSHOT.jar:7.1.3.Final-SNAPSHOT]
> at org.jboss.as.web.session.DistributableSessionManager$PassivationCheck.access$300(DistributableSessionManager.java:1529) [jboss-as-web-7.1.3.Final-SNAPSHOT.jar:7.1.3.Final-SNAPSHOT]
> at org.jboss.as.web.session.DistributableSessionManager.processExpirationPassivation(DistributableSessionManager.java:1293) [jboss-as-web-7.1.3.Final-SNAPSHOT.jar:7.1.3.Final-SNAPSHOT]
> at org.jboss.as.web.session.AbstractSessionManager.processExpires(AbstractSessionManager.java:136) [jboss-as-web-7.1.3.Final-SNAPSHOT.jar:7.1.3.Final-SNAPSHOT]
> at org.apache.catalina.session.ManagerBase.backgroundProcess(ManagerBase.java:375) [jbossweb-7.0.17.Final.jar:]
> at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1317) [jbossweb-7.0.17.Final.jar:]
> at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1605) [jbossweb-7.0.17.Final.jar:]
> at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1617) [jbossweb-7.0.17.Final.jar:]
> at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1617) [jbossweb-7.0.17.Final.jar:]
> at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1591) [jbossweb-7.0.17.Final.jar:]
> at java.lang.Thread.run(Thread.java:662) [rt.jar:1.6.0_35]
> 12:38:48,437 ERROR [org.apache.catalina.session.ManagerBase] (ContainerBackgroundProcessor[StandardEngine[jboss.web]]) JBAS018079: Failed to passivate session TkrU3mliw9NWrmpu86+XbehQ: java.lang.NullPointerException
> at org.infinispan.context.impl.AbstractTxInvocationContext.clearLockedKeys(AbstractTxInvocationContext.java:100)
> at org.infinispan.util.concurrent.locks.LockManagerImpl.unlockAll(LockManagerImpl.java:116)
> at org.infinispan.interceptors.locking.AbstractTxLockingInterceptor.visitEvictCommand(AbstractTxLockingInterceptor.java:86)
> at org.infinispan.commands.write.EvictCommand.acceptVisitor(EvictCommand.java:47)
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116)
> at org.infinispan.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:130)
> at org.infinispan.commands.AbstractVisitor.visitEvictCommand(AbstractVisitor.java:87)
> at org.infinispan.commands.write.EvictCommand.acceptVisitor(EvictCommand.java:47)
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116)
> at org.infinispan.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:130)
> at org.infinispan.commands.AbstractVisitor.visitEvictCommand(AbstractVisitor.java:87)
> at org.infinispan.commands.write.EvictCommand.acceptVisitor(EvictCommand.java:47)
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116)
> at org.infinispan.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:130)
> at org.infinispan.commands.AbstractVisitor.visitEvictCommand(AbstractVisitor.java:87)
> at org.infinispan.commands.write.EvictCommand.acceptVisitor(EvictCommand.java:47)
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116)
> at org.infinispan.interceptors.CacheMgmtInterceptor.visitEvictCommand(CacheMgmtInterceptor.java:86)
> at org.infinispan.commands.write.EvictCommand.acceptVisitor(EvictCommand.java:47)
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116)
> at org.infinispan.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:132)
> at org.infinispan.interceptors.InvocationContextInterceptor.handleDefault(InvocationContextInterceptor.java:91)
> at org.infinispan.commands.AbstractVisitor.visitEvictCommand(AbstractVisitor.java:87)
> at org.infinispan.commands.write.EvictCommand.acceptVisitor(EvictCommand.java:47)
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116)
> at org.infinispan.interceptors.BatchingInterceptor.handleDefault(BatchingInterceptor.java:80)
> at org.infinispan.commands.AbstractVisitor.visitEvictCommand(AbstractVisitor.java:87)
> at org.infinispan.commands.write.EvictCommand.acceptVisitor(EvictCommand.java:47)
> at org.infinispan.interceptors.InterceptorChain.invoke(InterceptorChain.java:345)
> at org.infinispan.CacheImpl.evict(CacheImpl.java:382)
> at org.infinispan.CacheImpl.evict(CacheImpl.java:375)
> at org.infinispan.AbstractDelegatingCache.evict(AbstractDelegatingCache.java:60)
> at org.infinispan.AbstractDelegatingCache.evict(AbstractDelegatingCache.java:60)
> at org.jboss.as.clustering.web.infinispan.DistributedCacheManager$4.invoke(DistributedCacheManager.java:306)
> at org.jboss.as.clustering.web.infinispan.DistributedCacheManager$4.invoke(DistributedCacheManager.java:303)
> at org.jboss.as.clustering.infinispan.invoker.SimpleCacheInvoker.invoke(SimpleCacheInvoker.java:34)
> at org.jboss.as.clustering.infinispan.invoker.BatchCacheInvoker.invoke(BatchCacheInvoker.java:48)
> at org.jboss.as.clustering.infinispan.invoker.RetryingCacheInvoker.invoke(RetryingCacheInvoker.java:81)
> at org.jboss.as.clustering.web.infinispan.DistributedCacheManager$ForceSynchronousCacheInvoker.invoke(DistributedCacheManager.java:531)
> at org.jboss.as.clustering.web.infinispan.DistributedCacheManager.evictSession(DistributedCacheManager.java:310)
> at org.jboss.as.web.session.DistributableSessionManager.processSessionPassivation(DistributableSessionManager.java:511) [jboss-as-web-7.1.3.Final-SNAPSHOT.jar:7.1.3.Final-SNAPSHOT]
> at org.jboss.as.web.session.DistributableSessionManager.access$600(DistributableSessionManager.java:84) [jboss-as-web-7.1.3.Final-SNAPSHOT.jar:7.1.3.Final-SNAPSHOT]
> at org.jboss.as.web.session.DistributableSessionManager$PassivationCheck.passivate(DistributableSessionManager.java:1557) [jboss-as-web-7.1.3.Final-SNAPSHOT.jar:7.1.3.Final-SNAPSHOT]
> at org.jboss.as.web.session.DistributableSessionManager$PassivationCheck.access$300(DistributableSessionManager.java:1529) [jboss-as-web-7.1.3.Final-SNAPSHOT.jar:7.1.3.Final-SNAPSHOT]
> at org.jboss.as.web.session.DistributableSessionManager.processExpirationPassivation(DistributableSessionManager.java:1293) [jboss-as-web-7.1.3.Final-SNAPSHOT.jar:7.1.3.Final-SNAPSHOT]
> at org.jboss.as.web.session.AbstractSessionManager.processExpires(AbstractSessionManager.java:136) [jboss-as-web-7.1.3.Final-SNAPSHOT.jar:7.1.3.Final-SNAPSHOT]
> at org.apache.catalina.session.ManagerBase.backgroundProcess(ManagerBase.java:375) [jbossweb-7.0.17.Final.jar:]
> at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1317) [jbossweb-7.0.17.Final.jar:]
> at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1605) [jbossweb-7.0.17.Final.jar:]
> at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1617) [jbossweb-7.0.17.Final.jar:]
> at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1617) [jbossweb-7.0.17.Final.jar:]
> at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1591) [jbossweb-7.0.17.Final.jar:]
> at java.lang.Thread.run(Thread.java:662) [rt.jar:1.6.0_35]
> {noformat}
--
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
11 years, 9 months
[JBoss JIRA] (ISPN-2876) AbstractComponentRegistry.getComponent can return an incomplete component
by Dan Berindei (JIRA)
Dan Berindei created ISPN-2876:
----------------------------------
Summary: AbstractComponentRegistry.getComponent can return an incomplete component
Key: ISPN-2876
URL: https://issues.jboss.org/browse/ISPN-2876
Project: Infinispan
Issue Type: Bug
Components: Locking and Concurrency
Affects Versions: 5.2.2.Final
Reporter: Dan Berindei
Assignee: Mircea Markus
Fix For: 6.0.0.Final
AbstractComponentRegistry.getComponent doesn't have any locking, so it's possible for a thread to retrieve a component while another thread is injecting that component's dependencies.
Normally this isn't a problem, because the global registry is locked during cache manager startup, and the cache registry is locked during cache startup. However, some global components are only created "on-demand", because a cache component depends on them, and this can happen if someone uses getComponent instead of getOrCreateComponent.
--
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
11 years, 9 months
[JBoss JIRA] (ISPN-2872) CH_UPDATE from new coord may crash rebalance from old coord
by Dan Berindei (JIRA)
[ https://issues.jboss.org/browse/ISPN-2872?page=com.atlassian.jira.plugin.... ]
Dan Berindei reassigned ISPN-2872:
----------------------------------
Assignee: Dan Berindei (was: Mircea Markus)
> CH_UPDATE from new coord may crash rebalance from old coord
> -----------------------------------------------------------
>
> Key: ISPN-2872
> URL: https://issues.jboss.org/browse/ISPN-2872
> Project: Infinispan
> Issue Type: Bug
> Components: State transfer
> Affects Versions: 5.2.2.Final
> Reporter: Radim Vansa
> Assignee: Dan Berindei
>
> This happened probably the first time, but the issue is here:
> When old coordinator leaves the cluster, it sends a REBALANCE_START as a goodbye. This will trigger rebalance process on some of the nodes. As we do sync GET_TRANSACTIONS, processing this command may take a while.
> However, new coordinator will send CH_UPDATE, which will change the current topologyId to a higher id. This command is processed in LocalTopologyManagerImpl synchronized on cacheStatus, but rebalance command has already left its synchronized block when it executes handler.rebalance.
> Then, as the old REBALANCE_START tries to call notifyTransactionDataReceived in its finally block, it finds out that the topologyId has increased and throws an exception. But the rebalance is left in inconsistent state (activeTopologyUpdates are non-zero, potentionally waitForState true, DataRehash listener notification not called...).
--
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
11 years, 9 months