[JBoss JIRA] (ISPN-5195) CacheConfigurationException when two methods using default cache configuration are called in same request
by Galder Zamarreño (JIRA)
[ https://issues.jboss.org/browse/ISPN-5195?page=com.atlassian.jira.plugin.... ]
Galder Zamarreño reassigned ISPN-5195:
--------------------------------------
Assignee: Sebastian Łaskawiec
> CacheConfigurationException when two methods using default cache configuration are called in same request
> ---------------------------------------------------------------------------------------------------------
>
> Key: ISPN-5195
> URL: https://issues.jboss.org/browse/ISPN-5195
> Project: Infinispan
> Issue Type: Bug
> Components: CDI Integration
> Affects Versions: 6.0.2.Final, 7.1.1.Final
> Reporter: Marcio Dantas
> Assignee: Sebastian Łaskawiec
> Priority: Critical
> Labels: cacheresult, cdi, infinispan, injectedcacheresolver
> Attachments: cdi-quickstart-7.1.1.Final.zip, infinispan-cdi.tar.gz
>
>
> When two methods annotated with @CacheResult (without cacheName specified) are called in the same request, then the following error occurs:
> {panel}
> org.infinispan.commons.CacheConfigurationException: Detected interceptor of type [org.infinispan.jcache.interceptor.ExpirationTrackingInterceptor] being added to the interceptor chain 1743453620 more than once!
> at org.infinispan.interceptors.InterceptorChain.assertNotAdded(InterceptorChain.java:76)
> at org.infinispan.interceptors.InterceptorChain.addInterceptorBefore(InterceptorChain.java:248)
> at org.infinispan.CacheImpl.addInterceptorBefore(CacheImpl.java:717)
> at org.infinispan.jcache.JCache.addExpirationTrackingInterceptor(JCache.java:158)
> at org.infinispan.jcache.JCache.<init>(JCache.java:111)
> at org.infinispan.jcache.JCacheManager.configureCache(JCacheManager.java:238)
> at org.infinispan.jcache.annotation.InjectedCacheResolver.getCacheFromDefaultCacheManager(InjectedCacheResolver.java:105)
> at org.infinispan.jcache.annotation.InjectedCacheResolver.resolveCache(InjectedCacheResolver.java:97)
> at org.infinispan.jcache.annotation.InjectedCacheResolver$Proxy$_$$_WeldClientProxy.resolveCache(InjectedCacheResolver$Proxy$_$$_WeldClientProxy.java)
> at org.infinispan.jcache.annotation.AbstractCacheResultInterceptor.cacheResult(AbstractCacheResultInterceptor.java:56)
> at org.infinispan.jcache.annotation.InjectedCacheResultInterceptor.cacheResult(InjectedCacheResultInterceptor.java:33)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:606)
> at org.jboss.weld.interceptor.proxy.SimpleMethodInvocation.invoke(SimpleMethodInvocation.java:30)
> at org.jboss.weld.interceptor.proxy.SimpleInterceptionChain.invokeNextInterceptor(SimpleInterceptionChain.java:69)
> at org.jboss.weld.interceptor.proxy.InterceptorMethodHandler.executeInterception(InterceptorMethodHandler.java:112)
> at org.jboss.weld.interceptor.proxy.InterceptorMethodHandler.invoke(InterceptorMethodHandler.java:88)
> at org.jboss.weld.bean.proxy.CombinedInterceptorAndDecoratorStackMethodHandler.invoke(CombinedInterceptorAndDecoratorStackMethodHandler.java:55)
> at org.infinispan.quickstart.cdi.GreetingService$Proxy$_$$_WeldSubclass.greetDefaultCacheConfigTwo(GreetingService$Proxy$_$$_WeldSubclass.java)
> at org.infinispan.quickstart.cdi.GreetingController.greet(GreetingController.java:58)
> at org.infinispan.quickstart.cdi.GreetingController$Proxy$_$$_WeldClientProxy.greet(GreetingController$Proxy$_$$_WeldClientProxy.java)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:606)
> at org.apache.el.parser.AstValue.invoke(AstValue.java:258)
> at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:278)
> at org.jboss.weld.util.el.ForwardingMethodExpression.invoke(ForwardingMethodExpression.java:40)
> at org.jboss.weld.el.WeldMethodExpression.invoke(WeldMethodExpression.java:50)
> at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)
> at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:87)
> ... 21 more
> {panel}
--
This message was sent by Atlassian JIRA
(v6.3.11#6341)
11 years
[JBoss JIRA] (ISPN-5205) CacheResult Interceptor creates wrong CacheManager
by Galder Zamarreño (JIRA)
[ https://issues.jboss.org/browse/ISPN-5205?page=com.atlassian.jira.plugin.... ]
Galder Zamarreño reassigned ISPN-5205:
--------------------------------------
Assignee: Sebastian Łaskawiec
> CacheResult Interceptor creates wrong CacheManager
> --------------------------------------------------
>
> Key: ISPN-5205
> URL: https://issues.jboss.org/browse/ISPN-5205
> Project: Infinispan
> Issue Type: Bug
> Components: CDI Integration
> Affects Versions: 6.0.2.Final
> Reporter: Bruno Palaoro
> Assignee: Sebastian Łaskawiec
> Priority: Critical
> Attachments: infinispan-cdi.zip
>
>
> If I use the CacheResult interceptor, it won't create the correct CacheManager. It seems that it always create using the default options, it doesn't matter the configurations I've used.
> In the attached example, the items are never added to the cache I inject in the GreetingCacheManager, seems like two different caches, one inside @CacheResult and when I inject its another.
> I've tried using the InjectCacheResult, and it solve this issue, but then another one rises, as described in issue 5195 (https://issues.jboss.org/browse/ISPN-5195)
--
This message was sent by Atlassian JIRA
(v6.3.11#6341)
11 years
[JBoss JIRA] (ISPN-5323) Add a configuration option for partition handling to force DEGRADED mode
by Wolf-Dieter Fink (JIRA)
Wolf-Dieter Fink created ISPN-5323:
--------------------------------------
Summary: Add a configuration option for partition handling to force DEGRADED mode
Key: ISPN-5323
URL: https://issues.jboss.org/browse/ISPN-5323
Project: Infinispan
Issue Type: Feature Request
Components: Core
Reporter: Wolf-Dieter Fink
Current one part of the partition can be stay AVAILABLE and therefor it is not possible to read key's in a DEGRADED partition as it might be stale.
But for some reason it might be worth to be able to read such keys.
In that case it must be ensured that no partition enter AVAILABLE mode and rebalance.
An additional configuration migt force DEGRADED mode for all partitions, in this case it will be possible to have read access to all keys where this part. does not have all owners AND have full access if all owners are available.
--
This message was sent by Atlassian JIRA
(v6.3.11#6341)
11 years
[JBoss JIRA] (ISPN-5322) Support replicated cache for PH in a read-only mode
by Wolf-Dieter Fink (JIRA)
Wolf-Dieter Fink created ISPN-5322:
--------------------------------------
Summary: Support replicated cache for PH in a read-only mode
Key: ISPN-5322
URL: https://issues.jboss.org/browse/ISPN-5322
Project: Infinispan
Issue Type: Feature Request
Components: Core
Reporter: Wolf-Dieter Fink
Current a REPL cache can not enable partition handling.
There is a WARN message that the PH is ignored for replicated mode.
The reason is that if one node leave the cache can become inconsistent.
But for some reason it might be worth to have the cache available as read-only, so there is no way to make the cache inconsistent.
--
This message was sent by Atlassian JIRA
(v6.3.11#6341)
11 years
[JBoss JIRA] (ISPN-5208) Avoid invalid topology
by Galder Zamarreño (JIRA)
[ https://issues.jboss.org/browse/ISPN-5208?page=com.atlassian.jira.plugin.... ]
Galder Zamarreño updated ISPN-5208:
-----------------------------------
Git Pull Request: https://github.com/infinispan/infinispan/pull/3312, https://github.com/infinispan/infinispan/pull/3332 (was: https://github.com/infinispan/infinispan/pull/3312)
> Avoid invalid topology
> ----------------------
>
> Key: ISPN-5208
> URL: https://issues.jboss.org/browse/ISPN-5208
> Project: Infinispan
> Issue Type: Enhancement
> Components: Server
> Reporter: Takayoshi Kimura
> Assignee: Galder Zamarreño
> Labels: jdg641
> Fix For: 7.2.0.Final
>
> Attachments: ISPN_5208.java
>
>
> We've seen some invalid topology propagated to client and it causes ArrayIndexOutOfBoundsException:
> {noformat}
> Caused by: java.lang.ArrayIndexOutOfBoundsException: 0
> at org.infinispan.client.hotrod.impl.transport.tcp.RoundRobinBalancingStrategy.getServerByIndex(RoundRobinBalancingStrategy.java:68) [infinispan-client-hotrod-6.1.0.Final-redhat-4.jar:6.1.0.Final-redhat-4]
> at org.infinispan.client.hotrod.impl.transport.tcp.RoundRobinBalancingStrategy.nextServer(RoundRobinBalancingStrategy.java:44) [infinispan-client-hotrod-6.1.0.Final-redhat-4.jar:6.1.0.Final-redhat-4]
> at org.infinispan.client.hotrod.impl.transport.tcp.TcpTransportFactory.nextServer(TcpTransportFactory.java:220) [infinispan-client-hotrod-6.1.0.Final-redhat-4.jar:6.1.0.Final-redhat-4]
> at org.infinispan.client.hotrod.impl.transport.tcp.TcpTransportFactory.getTransport(TcpTransportFactory.java:194) [infinispan-client-hotrod-6.1.0.Final-redhat-4.jar:6.1.0.Final-redhat-4]
> at org.infinispan.client.hotrod.impl.operations.FaultTolerantPingOperation.getTransport(FaultTolerantPingOperation.java:27) [infinispan-client-hotrod-6.1.0.Final-redhat-4.jar:6.1.0.Final-redhat-4]
> at org.infinispan.client.hotrod.impl.operations.RetryOnFailureOperation.execute(RetryOnFailureOperation.java:48) [infinispan-client-hotrod-6.1.0.Final-redhat-4.jar:6.1.0.Final-redhat-4]
> at org.infinispan.client.hotrod.impl.RemoteCacheImpl.ping(RemoteCacheImpl.java:535) [infinispan-client-hotrod-6.1.0.Final-redhat-4.jar:6.1.0.Final-redhat-4]
> at org.infinispan.client.hotrod.RemoteCacheManager.ping(RemoteCacheManager.java:635) [infinispan-client-hotrod-6.1.0.Final-redhat-4.jar:6.1.0.Final-redhat-4]
> at org.infinispan.client.hotrod.RemoteCacheManager.createRemoteCache(RemoteCacheManager.java:616) [infinispan-client-hotrod-6.1.0.Final-redhat-4.jar:6.1.0.Final-redhat-4]
> at org.infinispan.client.hotrod.RemoteCacheManager.getCache(RemoteCacheManager.java:527) [infinispan-client-hotrod-6.1.0.Final-redhat-4.jar:6.1.0.Final-redhat-4]
> at org.infinispan.client.hotrod.RemoteCacheManager.getCache(RemoteCacheManager.java:523) [infinispan-client-hotrod-6.1.0.Final-redhat-4.jar:6.1.0.Final-redhat-4]
> {noformat}
> {noformat}
> Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
> at org.infinispan.client.hotrod.impl.consistenthash.SegmentConsistentHash.getServer(SegmentConsistentHash.java:33)
> at org.infinispan.client.hotrod.impl.transport.tcp.TcpTransportFactory.getTransport(TcpTransportFactory.java:204)
> at org.infinispan.client.hotrod.impl.operations.AbstractKeyOperation.getTransport(AbstractKeyOperation.java:40)
> at org.infinispan.client.hotrod.impl.operations.RetryOnFailureOperation.execute(RetryOnFailureOperation.java:48)
> at org.infinispan.client.hotrod.impl.RemoteCacheImpl.put(RemoteCacheImpl.java:237)
> at org.infinispan.client.hotrod.impl.RemoteCacheSupport.put(RemoteCacheSupport.java:79)
> at sample.Main.main(Main.java:16)
> {noformat}
> It happens on both Hot Rod 2 and 1.3 clients.
> It's really hard to reproduce this state and we don't have a consistent way to reproduce it. However when this happens there is always view change happening so it's related to view change.
> Judging from the stack trace, the client receives numOwners=0 or numSegments=0 topology from the server.
> Also we are unable to find to recover this situation. Rebooting random nodes don't help and keep getting this exceptions on client side.
> Until we can find the root cause, I think it's better to add a guard to avoid this kind invalid topology stored in the server side and propagated to the clients.
--
This message was sent by Atlassian JIRA
(v6.3.11#6341)
11 years