[JBoss JIRA] (ISPN-10745) infinispan-jcache-remote does not support CDI caching annotations
by Dan Berindei (Jira)
[ https://issues.jboss.org/browse/ISPN-10745?page=com.atlassian.jira.plugin... ]
Dan Berindei updated ISPN-10745:
--------------------------------
Status: Open (was: Pull Request Sent)
> infinispan-jcache-remote does not support CDI caching annotations
> -----------------------------------------------------------------
>
> Key: ISPN-10745
> URL: https://issues.jboss.org/browse/ISPN-10745
> Project: Infinispan
> Issue Type: Bug
> Components: Core
> Affects Versions: 9.4.16.Final, 10.0.0.CR3
> Reporter: Dan Berindei
> Priority: Major
>
> {{infinispan-jcache-remote}} does not have CDI interceptors for the JCache annotations like {{@CacheResult}}, so the annotations are ignored.
> The JCache TCK has tests for the annotations (e.g. {{InterceptionCacheNameOnEachMethodTest}}), but those tests used to pass by accident: a Weld dependency ({{slf4j-api}}) was missing in the {{tck-remote}} maven-failsafe-plugin execution, and {{AbstractInterceptionTest}} was automatically excluding them.
> Weld 2.3.4.Final removed the {{slf4j-api}} dependency and the {{tck-remote}} interception tests started failing after the upgrade, but we did not notice because of ISPN-10379.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 6 months
[JBoss JIRA] (ISPN-10775) Netty 4.1.42
by Tristan Tarrant (Jira)
Tristan Tarrant created ISPN-10775:
--------------------------------------
Summary: Netty 4.1.42
Key: ISPN-10775
URL: https://issues.jboss.org/browse/ISPN-10775
Project: Infinispan
Issue Type: Component Upgrade
Components: Hot Rod, Memcached, REST, Server
Affects Versions: 10.0.0.CR3
Reporter: Tristan Tarrant
Assignee: Tristan Tarrant
Fix For: 10.0.0.Final
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 6 months
[JBoss JIRA] (ISPN-10774) kill-server Ant task kills clients too
by Dan Berindei (Jira)
Dan Berindei created ISPN-10774:
-----------------------------------
Summary: kill-server Ant task kills clients too
Key: ISPN-10774
URL: https://issues.jboss.org/browse/ISPN-10774
Project: Infinispan
Issue Type: Bug
Components: Test Suite - Server
Affects Versions: 10.0.0.CR3
Reporter: Dan Berindei
Assignee: Dan Berindei
Fix For: 10.0.0.Final
{{kill-server}} uses multiple sources to find the pid of the running server(s), among them {{lsof}} to find processes listening on the HotRod port.
The {{lsof}} command line is imprecise and it also finds clients that have leaked a connection to the server, killing the failsafe fork too early and preventing failsafe from reporting the test results.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 6 months
[JBoss JIRA] (ISPN-10774) kill-server Ant task kills clients too
by Dan Berindei (Jira)
[ https://issues.jboss.org/browse/ISPN-10774?page=com.atlassian.jira.plugin... ]
Dan Berindei updated ISPN-10774:
--------------------------------
Status: Open (was: New)
> kill-server Ant task kills clients too
> --------------------------------------
>
> Key: ISPN-10774
> URL: https://issues.jboss.org/browse/ISPN-10774
> Project: Infinispan
> Issue Type: Bug
> Components: Test Suite - Server
> Affects Versions: 10.0.0.CR3
> Reporter: Dan Berindei
> Assignee: Dan Berindei
> Priority: Major
> Fix For: 10.0.0.Final
>
>
> {{kill-server}} uses multiple sources to find the pid of the running server(s), among them {{lsof}} to find processes listening on the HotRod port.
> The {{lsof}} command line is imprecise and it also finds clients that have leaked a connection to the server, killing the failsafe fork too early and preventing failsafe from reporting the test results.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 6 months
[JBoss JIRA] (ISPN-10745) infinispan-jcache-remote does not support CDI caching annotations
by Dan Berindei (Jira)
[ https://issues.jboss.org/browse/ISPN-10745?page=com.atlassian.jira.plugin... ]
Dan Berindei commented on ISPN-10745:
-------------------------------------
The embedded implementation is not complete either: JSR-107 specifies that the caching annotations should either use the default cache manager OR the {{CacheResolverFactory}} provided by the user (e.g. {{@CacheResult(cacheResolverFactory = InjectedCacheResolverFactory.class)}}.
The Infinispan embedded implementation ignores the {{cacheResolverFactory}} value and has instead 2 sets of interceptors:
* Unmanaged interceptors ({{org.infinispan.jcache.annotation.Cache*Interceptor}}) always use JCache's default cache manager
* Managed interceptors ({{org.infinispan.jcache.annotation.InjectedCache*Interceptor}}) use {{EmbeddedCacheManager}} instances (possibly produced by the application server).
They search for an existing cache with the required name in any of the existing {{EmbeddedCacheManager}} s, and if the cache does not exist yet it is created in CDI's {{@Default}} {{EmbeddedCacheManager}}.
I believe we should deprecate the managed interceptors and make the unmanaged interceptors support non-JCache {{EmbeddedCacheManager}} only with an explicit {{CacheResolverFactory}}. I'm not sure if there's any value in providing our own implementation, looking only at cache names, instead we should make it easy for users to wrap an injected {{EmbeddedCacheManager}} in a {{javax.cache.CacheManager}} bean and inject that.
Unfortunately, since CDI 1.1/1.2, interceptors specified in a library's {{beans.xml}} are no longer applied automatically to all the application beans, and users need to put the interceptor class names in their own {{beans.xml}}. That means we moving the interceptors to another package is a breaking change, and moving the unmanaged interceptors to {{infinispan-jcache-commons}} to support remote caches requires a package name change (because managed interceptors depend on {{infinispan-core}}, and the jars are OSGi bundles, making split packages a pain).
> infinispan-jcache-remote does not support CDI caching annotations
> -----------------------------------------------------------------
>
> Key: ISPN-10745
> URL: https://issues.jboss.org/browse/ISPN-10745
> Project: Infinispan
> Issue Type: Bug
> Components: Core
> Affects Versions: 9.4.16.Final, 10.0.0.CR3
> Reporter: Dan Berindei
> Priority: Major
>
> {{infinispan-jcache-remote}} does not have CDI interceptors for the JCache annotations like {{@CacheResult}}, so the annotations are ignored.
> The JCache TCK has tests for the annotations (e.g. {{InterceptionCacheNameOnEachMethodTest}}), but those tests used to pass by accident: a Weld dependency ({{slf4j-api}}) was missing in the {{tck-remote}} maven-failsafe-plugin execution, and {{AbstractInterceptionTest}} was automatically excluding them.
> Weld 2.3.4.Final removed the {{slf4j-api}} dependency and the {{tck-remote}} interception tests started failing after the upgrade, but we did not notice because of ISPN-10379.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 6 months
[JBoss JIRA] (ISPN-10772) Cache put generates WARN message "ISPN004034: Unable to unmarshall bytes" when uses near cache
by Will Burns (Jira)
[ https://issues.jboss.org/browse/ISPN-10772?page=com.atlassian.jira.plugin... ]
Will Burns commented on ISPN-10772:
-----------------------------------
A preliminary fix, that most likely is incorrect can be found at https://github.com/infinispan/infinispan/compare/9.4.x...wburns:ISPN-1077...
> Cache put generates WARN message "ISPN004034: Unable to unmarshall bytes" when uses near cache
> ----------------------------------------------------------------------------------------------
>
> Key: ISPN-10772
> URL: https://issues.jboss.org/browse/ISPN-10772
> Project: Infinispan
> Issue Type: Bug
> Components: Hot Rod, Listeners
> Affects Versions: 9.4.16.Final
> Environment: RHDG 7.3.2
> Reporter: Will Burns
> Assignee: Gustavo Fernandes
> Priority: Major
>
> Customer has a cache configuration that uses nearCache builder. When try to get the value using cache.get(KEY), get the following message before get the value:
> -------------------------------------------------------------
> --- [Retrieve Bean] Retrieve key='KEY' ---
> Sep 20, 2019 7:15:28 PM org.infinispan.client.hotrod.impl.transport.netty.HeaderDecoder decode
> WARN: ISPN004039: Unable to complete reading event from server 192.168.1.5/192.168.1.5:11222
> org.infinispan.client.hotrod.exceptions.HotRodClientException:: ISPN004034: Unable to unmarshall bytes 01012905033E034B4559
> at org.infinispan.client.hotrod.marshall.MarshallerUtil.bytes2obj(MarshallerUtil.java:47)
> at org.infinispan.client.hotrod.DataFormat.keyToObj(DataFormat.java:103)
> at org.infinispan.client.hotrod.impl.protocol.Codec21.readCacheEvent(Codec21.java:79)
> at org.infinispan.client.hotrod.impl.transport.netty.HeaderDecoder.decode(HeaderDecoder.java:153)
> at org.infinispan.client.hotrod.impl.transport.netty.HintedReplayingDecoder.callDecode(HintedReplayingDecoder.java:98)
> at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:265)
> at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
> at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
> at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
> at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286)
> at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
> at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
> at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
> at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434)
> at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
> at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
> at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965)
> at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:808)
> at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:417)
> at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:317)
> at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
> 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)
> Caused by: java.io.IOException: Unsupported protocol version 1
> at org.jboss.marshalling.river.RiverUnmarshaller.start(RiverUnmarshaller.java:1349)
> at org.infinispan.commons.marshall.jboss.AbstractJBossMarshaller.startObjectInput(AbstractJBossMarshaller.java:129)
> at org.infinispan.commons.marshall.jboss.AbstractJBossMarshaller.objectFromByteBuffer(AbstractJBossMarshaller.java:110)
> at org.infinispan.commons.marshall.AbstractMarshaller.objectFromByteBuffer(AbstractMarshaller.java:82)
> at org.infinispan.client.hotrod.marshall.MarshallerUtil.bytes2obj(MarshallerUtil.java:31)
> ... 23 more
> --- [Retrieve Bean] Value is 'VALUE' ---
> -------------------------------------------------------------
> That doesn't impact the process of getting the stored value, but gets the WARN message with every query to that cache. The message is only generated when uses nearCahche
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 6 months