[JBoss JIRA] (ISPN-6443) Add ability to cancel an event in a listener
by Tristan Tarrant (JIRA)
[ https://issues.jboss.org/browse/ISPN-6443?page=com.atlassian.jira.plugin.... ]
Tristan Tarrant reassigned ISPN-6443:
-------------------------------------
Assignee: William Burns
> Add ability to cancel an event in a listener
> --------------------------------------------
>
> Key: ISPN-6443
> URL: https://issues.jboss.org/browse/ISPN-6443
> Project: Infinispan
> Issue Type: Enhancement
> Components: Core, Expiration
> Affects Versions: 8.2.0.Final
> Reporter: Vincent Massol
> Assignee: William Burns
>
> My use case is the following:
> * I have some lenghty computation that I cache
> * I don't want users to incur the wait before the computation is finished
> One idea is:
> * Upon expiration (or eviction), I'd like to put back the entry in the cache and start a thread to perform a recomputation (which would put the recomputed value in the cache)
> * The issue is that the cache has a lock on the entry and thus I can't put it back in the cache.
> Thus one solution is to be able to cancel the expiration/eviction events (and thus not have to put back the entry in the cache).
> Of course I'm very open to hear if there are other solutions to this! :) Thanks a lot
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 8 months
[JBoss JIRA] (ISPN-6227) ContinuousQueryMultipleCachesDistTest fails randomly
by Sebastian Łaskawiec (JIRA)
[ https://issues.jboss.org/browse/ISPN-6227?page=com.atlassian.jira.plugin.... ]
Sebastian Łaskawiec closed ISPN-6227.
-------------------------------------
> ContinuousQueryMultipleCachesDistTest fails randomly
> ----------------------------------------------------
>
> Key: ISPN-6227
> URL: https://issues.jboss.org/browse/ISPN-6227
> Project: Infinispan
> Issue Type: Bug
> Components: Embedded Querying
> Reporter: Adrian Nistor
> Assignee: Adrian Nistor
> Fix For: 8.2.0.CR1, 8.1.3.Final
>
>
> {code}
> [UnitTestTestNGListener] Test testContinuousQueryMultipleCaches(org.infinispan.query.continuous.ContinuousQueryMultipleCachesDistTest) failed.
> 165702 [ERROR] UnitTestTestNGListener: Test testContinuousQueryMultipleCaches(org.infinispan.query.continuous.ContinuousQueryMultipleCachesDistTest) failed.
> org.infinispan.commons.CacheListenerException: java.util.concurrent.ExecutionException: org.infinispan.remoting.transport.jgroups.SuspectException: Target node ContinuousQueryMultipleCachesDistTest-NodeD-46591 is not a cluster member, members are [ContinuousQueryMultipleCachesDistTest-NodeA-24926, ContinuousQueryMultipleCachesDistTest-NodeC-45731]
> at org.infinispan.notifications.cachelistener.CacheNotifierImpl.addListener(CacheNotifierImpl.java:804) ~[infinispan-core-8.2.0-SNAPSHOT.jar:8.2.0-SNAPSHOT]
> at org.infinispan.notifications.cachelistener.CacheNotifierImpl.addListener(CacheNotifierImpl.java:937) ~[infinispan-core-8.2.0-SNAPSHOT.jar:8.2.0-SNAPSHOT]
> at org.infinispan.cache.impl.CacheImpl.addListener(CacheImpl.java:722) ~[infinispan-core-8.2.0-SNAPSHOT.jar:8.2.0-SNAPSHOT]
> at org.infinispan.query.continuous.impl.ContinuousQueryImpl.addContinuousQueryListener(ContinuousQueryImpl.java:43) ~[classes/:?]
> at org.infinispan.query.continuous.AbstractCQMultipleCachesTest.createContinuousQuery(AbstractCQMultipleCachesTest.java:53) ~[test-classes/:?]
> at org.infinispan.query.continuous.AbstractCQMultipleCachesTest.testContinuousQueryMultipleCaches(AbstractCQMultipleCachesTest.java:65) ~[test-classes/:?]
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_45]
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_45]
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_45]
> at java.lang.reflect.Method.invoke(Method.java:497) ~[?:1.8.0_45]
> at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:84) ~[testng-6.8.8.jar:?]
> at org.testng.internal.MethodInvocationHelper$1.runTestMethod(MethodInvocationHelper.java:200) ~[testng-6.8.8.jar:?]
> at org.jboss.byteman.contrib.bmunit.BMNGAbstractRunner.run(BMNGAbstractRunner.java:58) ~[byteman-bmunit-2.1.4.jar:?]
> at sun.reflect.GeneratedMethodAccessor62.invoke(Unknown Source) ~[?:?]
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_45]
> at java.lang.reflect.Method.invoke(Method.java:497) ~[?:1.8.0_45]
> at org.testng.internal.MethodInvocationHelper.invokeHookable(MethodInvocationHelper.java:212) ~[testng-6.8.8.jar:?]
> at org.testng.internal.Invoker.invokeMethod(Invoker.java:707) [testng-6.8.8.jar:?]
> at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:901) [testng-6.8.8.jar:?]
> at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1231) [testng-6.8.8.jar:?]
> at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:127) [testng-6.8.8.jar:?]
> at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111) [testng-6.8.8.jar:?]
> at org.testng.TestRunner.privateRun(TestRunner.java:767) [testng-6.8.8.jar:?]
> at org.testng.TestRunner.run(TestRunner.java:617) [testng-6.8.8.jar:?]
> at org.testng.SuiteRunner.runTest(SuiteRunner.java:348) [testng-6.8.8.jar:?]
> at org.testng.SuiteRunner.access$000(SuiteRunner.java:38) [testng-6.8.8.jar:?]
> at org.testng.SuiteRunner$SuiteWorker.run(SuiteRunner.java:382) [testng-6.8.8.jar:?]
> at org.testng.internal.thread.ThreadUtil$2.call(ThreadUtil.java:64) [testng-6.8.8.jar:?]
> at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_45]
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:1.8.0_45]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:1.8.0_45]
> at java.lang.Thread.run(Thread.java:745) [?:1.8.0_45]
> Caused by: java.util.concurrent.ExecutionException: org.infinispan.remoting.transport.jgroups.SuspectException: Target node ContinuousQueryMultipleCachesDistTest-NodeD-46591 is not a cluster member, members are [ContinuousQueryMultipleCachesDistTest-NodeA-24926, ContinuousQueryMultipleCachesDistTest-NodeC-45731]
> at org.infinispan.commons.util.concurrent.NoOpFuture.get(NoOpFuture.java:44) ~[infinispan-commons-8.2.0-SNAPSHOT.jar:8.2.0-SNAPSHOT]
> at org.infinispan.notifications.cachelistener.CacheNotifierImpl.addListener(CacheNotifierImpl.java:800) ~[infinispan-core-8.2.0-SNAPSHOT.jar:8.2.0-SNAPSHOT]
> ... 31 more
> Caused by: org.infinispan.remoting.transport.jgroups.SuspectException: Target node ContinuousQueryMultipleCachesDistTest-NodeD-46591 is not a cluster member, members are [ContinuousQueryMultipleCachesDistTest-NodeA-24926, ContinuousQueryMultipleCachesDistTest-NodeC-45731]
> at org.infinispan.distexec.DefaultExecutorService.submit(DefaultExecutorService.java:419) ~[infinispan-core-8.2.0-SNAPSHOT.jar:8.2.0-SNAPSHOT]
> at org.infinispan.distexec.DefaultExecutorService.submit(DefaultExecutorService.java:408) ~[infinispan-core-8.2.0-SNAPSHOT.jar:8.2.0-SNAPSHOT]
> at org.infinispan.distexec.DistributedExecutionCompletionService.submit(DistributedExecutionCompletionService.java:178) ~[infinispan-core-8.2.0-SNAPSHOT.jar:8.2.0-SNAPSHOT]
> at org.infinispan.notifications.cachelistener.CacheNotifierImpl.addListener(CacheNotifierImpl.java:794) ~[infinispan-core-8.2.0-SNAPSHOT.jar:8.2.0-SNAPSHOT]
> ... 31 more
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 8 months
[JBoss JIRA] (ISPN-6293) Registering a clustered listener in a DIST cluster leads to SuspectException if one member is not joined yet
by Sebastian Łaskawiec (JIRA)
[ https://issues.jboss.org/browse/ISPN-6293?page=com.atlassian.jira.plugin.... ]
Sebastian Łaskawiec closed ISPN-6293.
-------------------------------------
> Registering a clustered listener in a DIST cluster leads to SuspectException if one member is not joined yet
> ------------------------------------------------------------------------------------------------------------
>
> Key: ISPN-6293
> URL: https://issues.jboss.org/browse/ISPN-6293
> Project: Infinispan
> Issue Type: Bug
> Affects Versions: 8.2.0.Beta2
> Reporter: Adrian Nistor
> Assignee: William Burns
> Fix For: 8.2.0.Final, 8.1.3.Final
>
>
> Reproducer:
> {code}
> import org.infinispan.configuration.cache.CacheMode;
> import org.infinispan.configuration.cache.ConfigurationBuilder;
> import org.infinispan.notifications.Listener;
> import org.infinispan.notifications.cachelistener.annotation.CacheEntryCreated;
> import org.infinispan.notifications.cachelistener.event.CacheEntryEvent;
> import org.infinispan.test.MultipleCacheManagersTest;
> import org.testng.annotations.Test;
> @Test(groups = "functional", testName = "ClusteredListenerJoinsTest")
> public class ClusteredListenerJoinsTest extends MultipleCacheManagersTest {
> @Listener(clustered = true)
> private static final class NoOpListener {
> @CacheEntryCreated
> public void handleEvent(CacheEntryEvent<Object, Object> e) {
> }
> }
> @Override
> protected void createCacheManagers() {
> ConfigurationBuilder c = buildConfiguration();
> createCluster(c, 3);
> waitForClusterToForm();
> }
> private ConfigurationBuilder buildConfiguration() {
> ConfigurationBuilder c = getDefaultClusteredCacheConfig(CacheMode.DIST_SYNC, false); //unreproducible with CacheMode.REPL_SYNC
> c.clustering().hash().numOwners(2);
> return c;
> }
> public void testJoins() {
> cache(0).addListener(new NoOpListener());
> addClusterEnabledCacheManager(buildConfiguration());
> //waitForClusterToForm();
> cache(0).addListener(new NoOpListener()); //fails most times with SuspectException; uncomment the line above to ensure it does not fail
> }
> }
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 8 months
[JBoss JIRA] (ISPN-6368) Race condition in InternalCacheRegistryImpl.registerInternalCache
by Sebastian Łaskawiec (JIRA)
[ https://issues.jboss.org/browse/ISPN-6368?page=com.atlassian.jira.plugin.... ]
Sebastian Łaskawiec closed ISPN-6368.
-------------------------------------
> Race condition in InternalCacheRegistryImpl.registerInternalCache
> -----------------------------------------------------------------
>
> Key: ISPN-6368
> URL: https://issues.jboss.org/browse/ISPN-6368
> Project: Infinispan
> Issue Type: Bug
> Components: Core
> Affects Versions: 8.1.0.Final, 8.2.0.Final
> Reporter: Adrian Nistor
> Assignee: Adrian Nistor
> Fix For: 8.1.3.Final, 8.2.1.Final, 9.0.0.Alpha1, 9.0.0.Final
>
>
> Access to internalCaches set can cause race conditions and errors related to duplicate cache definitions can be mistakenly reported.
> {code}
> 17:51:40,668 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-3) MSC000001: Failed to start service jboss.datagrid-infinispan.clustered.disttestcache: org.jboss.msc.service.StartException in service jboss.datagrid-infinispan.clustered.disttestcache: Failed to start service
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1904)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> at java.lang.Thread.run(Thread.java:745)
> Caused by: org.infinispan.commons.CacheConfigurationException: ISPN000358: A cache configuration named ___query_known_classes already exists. This cannot be configured externally by the user.
> at org.infinispan.registry.impl.InternalCacheRegistryImpl.registerInternalCache(InternalCacheRegistryImpl.java:56)
> at org.infinispan.registry.impl.InternalCacheRegistryImpl.registerInternalCache(InternalCacheRegistryImpl.java:49)
> at org.infinispan.query.backend.QueryKnownClasses.startInternalCache(QueryKnownClasses.java:219)
> at org.infinispan.query.backend.QueryKnownClasses.start(QueryKnownClasses.java:119)
> at org.infinispan.query.backend.QueryInterceptor.start(QueryInterceptor.java:129)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at org.infinispan.commons.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:168)
> at org.infinispan.factories.AbstractComponentRegistry$PrioritizedMethod.invoke(AbstractComponentRegistry.java:859)
> at org.infinispan.factories.AbstractComponentRegistry.invokeStartMethods(AbstractComponentRegistry.java:628)
> at org.infinispan.factories.AbstractComponentRegistry.internalStart(AbstractComponentRegistry.java:617)
> at org.infinispan.factories.AbstractComponentRegistry.start(AbstractComponentRegistry.java:542)
> at org.infinispan.factories.ComponentRegistry.start(ComponentRegistry.java:238)
> at org.infinispan.cache.impl.CacheImpl.start(CacheImpl.java:849)
> at org.infinispan.manager.DefaultCacheManager.wireAndStartCache(DefaultCacheManager.java:635)
> at org.infinispan.manager.DefaultCacheManager.createCache(DefaultCacheManager.java:585)
> at org.infinispan.manager.DefaultCacheManager.getCache(DefaultCacheManager.java:451)
> at org.infinispan.manager.impl.AbstractDelegatingEmbeddedCacheManager.getCache(AbstractDelegatingEmbeddedCacheManager.java:133)
> at org.infinispan.server.infinispan.SecurityActions$5.run(SecurityActions.java:130)
> at org.infinispan.server.infinispan.SecurityActions$5.run(SecurityActions.java:127)
> at org.infinispan.security.Security.doPrivileged(Security.java:76)
> at org.infinispan.server.infinispan.SecurityActions.doPrivileged(SecurityActions.java:63)
> at org.infinispan.server.infinispan.SecurityActions.startCache(SecurityActions.java:135)
> at org.jboss.as.clustering.infinispan.subsystem.CacheService.start(CacheService.java:86)
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948)
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881)
> ... 3 more
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 8 months