[JBoss JIRA] (ISPN-8721) Clustered 2nd level cache sometimes throws NullPointerException when new node starts up
by Tristan Tarrant (Jira)
[ https://issues.jboss.org/browse/ISPN-8721?page=com.atlassian.jira.plugin.... ]
Tristan Tarrant updated ISPN-8721:
----------------------------------
Status: Resolved (was: Pull Request Sent)
Resolution: Done
> Clustered 2nd level cache sometimes throws NullPointerException when new node starts up
> ---------------------------------------------------------------------------------------
>
> Key: ISPN-8721
> URL: https://issues.jboss.org/browse/ISPN-8721
> Project: Infinispan
> Issue Type: Bug
> Components: Hibernate Cache
> Affects Versions: 9.1.4.Final
> Environment: jvm 1.8
> Reporter: Tom Dearman
> Assignee: Tom Dearman
> Priority: Major
> Fix For: 9.4.0.Final
>
> Attachments: sample-app.cache.tar.gz
>
>
> There is a race condition in PutFromLoadValidator as it registers itself in the component registry before it is fully initialised. You can reproduce this by running the contained app against h2 server db. First start this app with default port. Then start the app on port '8080' and make a few requests to '/add' to create data. After that send continuous requests to '/update' in order change data and trigger the cache:
> for i in
> {code}
> {1..1000}
> ; do sleep 0.01; curl http://localhost:8080/update -X POST; done
> {code}
> Then start another instance of the app on port 8090:
> {code}
> java -jar test-app-0.0.1-SNAPSHOT.jar --server.port=8090
> {code}
> Most of the time one of the updates will fail and the logs will show the following:
> {code}
> 2018-01-23 15:36:46 [main] DEBUG o.h.c.i.access.PutFromLoadValidator - Interceptor chain was: [org.infinispan.interceptors.InvocationContextInterceptor@407a7f2a, org.infinispan.interceptors.locking.NonTransactionalLockingInterceptor@4ea5b703, org.infinispan.interceptors.EntryWrappingInterceptor@2a7ed1f, org.infinispan.interceptors.InvalidationInterceptor@3fa247d1, org.infinispan.interceptors.CallInterceptor@2cb2fc20]
> 2018-01-23 15:36:46 [main] DEBUG o.h.c.i.access.PutFromLoadValidator - New interceptor chain is: [org.infinispan.interceptors.InvocationContextInterceptor@407a7f2a, org.infinispan.interceptors.locking.NonTransactionalLockingInterceptor@4ea5b703, org.hibernate.cache.infinispan.access.NonTxPutFromLoadInterceptor@495ee280, org.infinispan.interceptors.EntryWrappingInterceptor@2a7ed1f, org.hibernate.cache.infinispan.access.NonTxInvalidationInterceptor@4fa1c212, org.infinispan.interceptors.CallInterceptor@2cb2fc20]
> 2018-01-23 15:36:46 [main] TRACE o.i.manager.DefaultCacheManager - About to wire and start cache test.app.data.User-pending-puts
> 2018-01-23 15:36:46 [remote-thread--p2-t1] ERROR o.i.i.InvocationContextInterceptor - ISPN000136: Error executing command BeginInvalidationCommand, writing keys test.app.data.User#2
> java.lang.NullPointerException: null
> at org.hibernate.cache.infinispan.access.PutFromLoadValidator.beginInvalidatingWithPFER(PutFromLoadValidator.java:561)
> at org.hibernate.cache.infinispan.access.PutFromLoadValidator.beginInvalidatingKey(PutFromLoadValidator.java:555)
> at org.hibernate.cache.infinispan.access.NonTxPutFromLoadInterceptor.visitInvalidateCommand(NonTxPutFromLoadInterceptor.java:70)
> at org.infinispan.commands.write.InvalidateCommand.acceptVisitor(InvalidateCommand.java:114)
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:99)
> at org.infinispan.interceptors.locking.AbstractLockingInterceptor.visitInvalidateCommand(AbstractLockingInterceptor.java:112)
> at org.infinispan.commands.write.InvalidateCommand.acceptVisitor(InvalidateCommand.java:114)
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:99)
> at org.infinispan.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:110)
> at org.infinispan.interceptors.InvocationContextInterceptor.handleDefault(InvocationContextInterceptor.java:79)
> at org.infinispan.commands.AbstractVisitor.visitInvalidateCommand(AbstractVisitor.java:127)
> at org.infinispan.commands.write.InvalidateCommand.acceptVisitor(InvalidateCommand.java:114)
> at org.infinispan.interceptors.InterceptorChain.invoke(InterceptorChain.java:335)
> at org.infinispan.commands.remote.BaseRpcInvokingCommand.processVisitableCommand(BaseRpcInvokingCommand.java:43)
> at org.infinispan.commands.remote.SingleRpcCommand.perform(SingleRpcCommand.java:51)
> at org.infinispan.remoting.inboundhandler.BasePerCacheInboundInvocationHandler.invokePerform(BasePerCacheInboundInvocationHandler.java:92)
> at org.infinispan.remoting.inboundhandler.BaseBlockingRunnable.run(BaseBlockingRunnable.java:34)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
> at java.lang.Thread.run(Thread.java:748)
> 2018-01-23 15:36:47 [main] TRACE o.i.manager.DefaultCacheManager - Closing latch for cache test.app.data.User-pending-puts
> {code}
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 6 months
[JBoss JIRA] (ISPN-8813) org.infinispan.server.test.query.RemoteQueryStringIT.testFullTextTermRightOperandAnalyzed fails randomly
by Tristan Tarrant (Jira)
[ https://issues.jboss.org/browse/ISPN-8813?page=com.atlassian.jira.plugin.... ]
Tristan Tarrant updated ISPN-8813:
----------------------------------
Fix Version/s: 9.4.1.Final
(was: 9.4.0.Final)
> org.infinispan.server.test.query.RemoteQueryStringIT.testFullTextTermRightOperandAnalyzed fails randomly
> --------------------------------------------------------------------------------------------------------
>
> Key: ISPN-8813
> URL: https://issues.jboss.org/browse/ISPN-8813
> Project: Infinispan
> Issue Type: Bug
> Components: Remote Querying
> Reporter: Adrian Nistor
> Assignee: Adrian Nistor
> Priority: Major
> Fix For: 9.4.1.Final
>
>
> To be fair, this failure happens almost all the time. But I've seen some rare builds where it did not fail, so I'm marking it as a random failure.
> {code}
> [0m[33m10:10:13,714 WARN [org.infinispan.factories.ComponentRegistry] (MSC service thread 1-2) ISPN000189: While stopping a cache or cache manager, one of its components failed to stop: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.notifications.cachelistener.CacheNotifierImpl.stop() on object of type CacheNotifierImpl
> at org.infinispan.commons.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:172)
> at org.infinispan.factories.AbstractComponentRegistry$PrioritizedMethod.invoke(AbstractComponentRegistry.java:878)
> at org.infinispan.factories.AbstractComponentRegistry.internalStop(AbstractComponentRegistry.java:679)
> at org.infinispan.factories.AbstractComponentRegistry.stop(AbstractComponentRegistry.java:581)
> at org.infinispan.factories.ComponentRegistry.stop(ComponentRegistry.java:256)
> at org.infinispan.cache.impl.CacheImpl.performImmediateShutdown(CacheImpl.java:937)
> at org.infinispan.cache.impl.CacheImpl.stop(CacheImpl.java:901)
> at org.infinispan.cache.impl.AbstractDelegatingCache.stop(AbstractDelegatingCache.java:420)
> at org.infinispan.server.infinispan.SecurityActions$6.run(SecurityActions.java:148)
> at org.infinispan.server.infinispan.SecurityActions$6.run(SecurityActions.java:145)
> at org.infinispan.security.Security.doPrivileged(Security.java:76)
> at org.infinispan.server.infinispan.SecurityActions.doPrivileged(SecurityActions.java:69)
> at org.infinispan.server.infinispan.SecurityActions.stopCache(SecurityActions.java:152)
> at org.jboss.as.clustering.infinispan.subsystem.CacheService.stop(CacheService.java:103)
> at org.jboss.msc.service.ServiceControllerImpl$StopTask.stopService(ServiceControllerImpl.java:2150)
> at org.jboss.msc.service.ServiceControllerImpl$StopTask.run(ServiceControllerImpl.java:2101)
> 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: java.lang.NullPointerException
> at org.infinispan.query.dsl.embedded.impl.BaseJPAFilterIndexingServiceProvider.stop(BaseJPAFilterIndexingServiceProvider.java:68)
> at org.infinispan.notifications.cachelistener.CacheNotifierImpl.stop(CacheNotifierImpl.java:275)
> 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:497)
> at org.infinispan.commons.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:168)
> ... 18 more
> [0m[0m10:10:13,728 INFO [org.jboss.as.clustering.infinispan] (MSC service thread 1-2) DGISPN0002: Stopped default cache from local container
> [0m[33m10:10:13,748 WARN [org.infinispan.factories.ComponentRegistry] (MSC service thread 1-2) ISPN000189: While stopping a cache or cache manager, one of its components failed to stop: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.notifications.cachelistener.CacheNotifierImpl.stop() on object of type CacheNotifierImpl
> at org.infinispan.commons.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:172)
> at org.infinispan.factories.AbstractComponentRegistry$PrioritizedMethod.invoke(AbstractComponentRegistry.java:878)
> at org.infinispan.factories.AbstractComponentRegistry.internalStop(AbstractComponentRegistry.java:679)
> at org.infinispan.factories.AbstractComponentRegistry.stop(AbstractComponentRegistry.java:581)
> at org.infinispan.factories.ComponentRegistry.stop(ComponentRegistry.java:256)
> at org.infinispan.cache.impl.CacheImpl.performImmediateShutdown(CacheImpl.java:937)
> at org.infinispan.cache.impl.CacheImpl.stop(CacheImpl.java:901)
> at org.infinispan.cache.impl.AbstractDelegatingCache.stop(AbstractDelegatingCache.java:420)
> at org.infinispan.manager.DefaultCacheManager.terminate(DefaultCacheManager.java:679)
> at org.infinispan.manager.DefaultCacheManager.stopCaches(DefaultCacheManager.java:719)
> at org.infinispan.manager.DefaultCacheManager.stop(DefaultCacheManager.java:696)
> at org.infinispan.manager.impl.AbstractDelegatingEmbeddedCacheManager.stop(AbstractDelegatingEmbeddedCacheManager.java:190)
> at org.infinispan.server.infinispan.SecurityActions$2.run(SecurityActions.java:98)
> at org.infinispan.server.infinispan.SecurityActions$2.run(SecurityActions.java:94)
> at org.infinispan.security.Security.doPrivileged(Security.java:76)
> at org.infinispan.server.infinispan.SecurityActions.doPrivileged(SecurityActions.java:69)
> at org.infinispan.server.infinispan.SecurityActions.stopAndUnregisterContainer(SecurityActions.java:106)
> at org.jboss.as.clustering.infinispan.subsystem.CacheContainerBuilder.stop(CacheContainerBuilder.java:106)
> at org.jboss.msc.service.ServiceControllerImpl$StopTask.stopService(ServiceControllerImpl.java:2150)
> at org.jboss.msc.service.ServiceControllerImpl$StopTask.run(ServiceControllerImpl.java:2101)
> 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: java.lang.NullPointerException
> at org.infinispan.query.dsl.embedded.impl.BaseJPAFilterIndexingServiceProvider.stop(BaseJPAFilterIndexingServiceProvider.java:68)
> at org.infinispan.notifications.cachelistener.CacheNotifierImpl.stop(CacheNotifierImpl.java:275)
> 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:497)
> at org.infinispan.commons.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:168)
> ... 22 more
> {code}
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 6 months
[JBoss JIRA] (ISPN-8564) Cannot select inner entities in Ickle
by Tristan Tarrant (Jira)
[ https://issues.jboss.org/browse/ISPN-8564?page=com.atlassian.jira.plugin.... ]
Tristan Tarrant updated ISPN-8564:
----------------------------------
Status: Resolved (was: Pull Request Sent)
Resolution: Done
> Cannot select inner entities in Ickle
> -------------------------------------
>
> Key: ISPN-8564
> URL: https://issues.jboss.org/browse/ISPN-8564
> Project: Infinispan
> Issue Type: Bug
> Components: Embedded Querying, Remote Querying
> Affects Versions: 9.0.0.Final
> Reporter: Gustavo Fernandes
> Assignee: Adrian Nistor
> Priority: Major
> Fix For: 9.4.0.Final
>
>
> Consider a proto mapping:
> {code}
> message Parent {
> optional Child child;
> }
> message Child {
> optional string name = 1;
> }
> {code}
> It is not possible to select any of the Child attributes in the query. The following queries fail:
> {{SELECT p.child FROM Parent p}}
> Fails with ISPN028503
> {{SELECT p.child.name FROM Parent p}}
> Fails with ISPN028502: Unknown alias 'child'
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 6 months
[JBoss JIRA] (ISPN-8813) org.infinispan.server.test.query.RemoteQueryStringIT.testFullTextTermRightOperandAnalyzed fails randomly
by Tristan Tarrant (Jira)
[ https://issues.jboss.org/browse/ISPN-8813?page=com.atlassian.jira.plugin.... ]
Tristan Tarrant updated ISPN-8813:
----------------------------------
Status: Open (was: Pull Request Sent)
> org.infinispan.server.test.query.RemoteQueryStringIT.testFullTextTermRightOperandAnalyzed fails randomly
> --------------------------------------------------------------------------------------------------------
>
> Key: ISPN-8813
> URL: https://issues.jboss.org/browse/ISPN-8813
> Project: Infinispan
> Issue Type: Bug
> Components: Remote Querying
> Reporter: Adrian Nistor
> Assignee: Adrian Nistor
> Priority: Major
> Fix For: 9.4.0.Final
>
>
> To be fair, this failure happens almost all the time. But I've seen some rare builds where it did not fail, so I'm marking it as a random failure.
> {code}
> [0m[33m10:10:13,714 WARN [org.infinispan.factories.ComponentRegistry] (MSC service thread 1-2) ISPN000189: While stopping a cache or cache manager, one of its components failed to stop: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.notifications.cachelistener.CacheNotifierImpl.stop() on object of type CacheNotifierImpl
> at org.infinispan.commons.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:172)
> at org.infinispan.factories.AbstractComponentRegistry$PrioritizedMethod.invoke(AbstractComponentRegistry.java:878)
> at org.infinispan.factories.AbstractComponentRegistry.internalStop(AbstractComponentRegistry.java:679)
> at org.infinispan.factories.AbstractComponentRegistry.stop(AbstractComponentRegistry.java:581)
> at org.infinispan.factories.ComponentRegistry.stop(ComponentRegistry.java:256)
> at org.infinispan.cache.impl.CacheImpl.performImmediateShutdown(CacheImpl.java:937)
> at org.infinispan.cache.impl.CacheImpl.stop(CacheImpl.java:901)
> at org.infinispan.cache.impl.AbstractDelegatingCache.stop(AbstractDelegatingCache.java:420)
> at org.infinispan.server.infinispan.SecurityActions$6.run(SecurityActions.java:148)
> at org.infinispan.server.infinispan.SecurityActions$6.run(SecurityActions.java:145)
> at org.infinispan.security.Security.doPrivileged(Security.java:76)
> at org.infinispan.server.infinispan.SecurityActions.doPrivileged(SecurityActions.java:69)
> at org.infinispan.server.infinispan.SecurityActions.stopCache(SecurityActions.java:152)
> at org.jboss.as.clustering.infinispan.subsystem.CacheService.stop(CacheService.java:103)
> at org.jboss.msc.service.ServiceControllerImpl$StopTask.stopService(ServiceControllerImpl.java:2150)
> at org.jboss.msc.service.ServiceControllerImpl$StopTask.run(ServiceControllerImpl.java:2101)
> 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: java.lang.NullPointerException
> at org.infinispan.query.dsl.embedded.impl.BaseJPAFilterIndexingServiceProvider.stop(BaseJPAFilterIndexingServiceProvider.java:68)
> at org.infinispan.notifications.cachelistener.CacheNotifierImpl.stop(CacheNotifierImpl.java:275)
> 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:497)
> at org.infinispan.commons.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:168)
> ... 18 more
> [0m[0m10:10:13,728 INFO [org.jboss.as.clustering.infinispan] (MSC service thread 1-2) DGISPN0002: Stopped default cache from local container
> [0m[33m10:10:13,748 WARN [org.infinispan.factories.ComponentRegistry] (MSC service thread 1-2) ISPN000189: While stopping a cache or cache manager, one of its components failed to stop: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.notifications.cachelistener.CacheNotifierImpl.stop() on object of type CacheNotifierImpl
> at org.infinispan.commons.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:172)
> at org.infinispan.factories.AbstractComponentRegistry$PrioritizedMethod.invoke(AbstractComponentRegistry.java:878)
> at org.infinispan.factories.AbstractComponentRegistry.internalStop(AbstractComponentRegistry.java:679)
> at org.infinispan.factories.AbstractComponentRegistry.stop(AbstractComponentRegistry.java:581)
> at org.infinispan.factories.ComponentRegistry.stop(ComponentRegistry.java:256)
> at org.infinispan.cache.impl.CacheImpl.performImmediateShutdown(CacheImpl.java:937)
> at org.infinispan.cache.impl.CacheImpl.stop(CacheImpl.java:901)
> at org.infinispan.cache.impl.AbstractDelegatingCache.stop(AbstractDelegatingCache.java:420)
> at org.infinispan.manager.DefaultCacheManager.terminate(DefaultCacheManager.java:679)
> at org.infinispan.manager.DefaultCacheManager.stopCaches(DefaultCacheManager.java:719)
> at org.infinispan.manager.DefaultCacheManager.stop(DefaultCacheManager.java:696)
> at org.infinispan.manager.impl.AbstractDelegatingEmbeddedCacheManager.stop(AbstractDelegatingEmbeddedCacheManager.java:190)
> at org.infinispan.server.infinispan.SecurityActions$2.run(SecurityActions.java:98)
> at org.infinispan.server.infinispan.SecurityActions$2.run(SecurityActions.java:94)
> at org.infinispan.security.Security.doPrivileged(Security.java:76)
> at org.infinispan.server.infinispan.SecurityActions.doPrivileged(SecurityActions.java:69)
> at org.infinispan.server.infinispan.SecurityActions.stopAndUnregisterContainer(SecurityActions.java:106)
> at org.jboss.as.clustering.infinispan.subsystem.CacheContainerBuilder.stop(CacheContainerBuilder.java:106)
> at org.jboss.msc.service.ServiceControllerImpl$StopTask.stopService(ServiceControllerImpl.java:2150)
> at org.jboss.msc.service.ServiceControllerImpl$StopTask.run(ServiceControllerImpl.java:2101)
> 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: java.lang.NullPointerException
> at org.infinispan.query.dsl.embedded.impl.BaseJPAFilterIndexingServiceProvider.stop(BaseJPAFilterIndexingServiceProvider.java:68)
> at org.infinispan.notifications.cachelistener.CacheNotifierImpl.stop(CacheNotifierImpl.java:275)
> 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:497)
> at org.infinispan.commons.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:168)
> ... 22 more
> {code}
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 6 months