]
William Burns updated ISPN-4920:
--------------------------------
Status: Resolved (was: Pull Request Sent)
Resolution: Done
CancelledKeyException should stop client event reader
-----------------------------------------------------
Key: ISPN-4920
URL:
https://issues.jboss.org/browse/ISPN-4920
Project: Infinispan
Issue Type: Bug
Components: Remote Protocols
Affects Versions: 7.0.0.CR2
Reporter: Galder ZamarreƱo
Assignee: Galder ZamarreƱo
Fix For: 7.0.0.Final
{code}
04:13:05,785 INFO [TestsuiteListener] (main) Running
org.infinispan.server.test.client.hotrod.HotRodRemoteCacheIT#testCustomEventsDynamic
04:13:06,005 WARN [ClientListenerNotifier] (HotRod-client-async-pool-2) ISPN004039:
Unable to complete reading event from server null
java.nio.channels.CancelledKeyException
at sun.nio.ch.SelectionKeyImpl.ensureValid(SelectionKeyImpl.java:73)
at sun.nio.ch.SelectionKeyImpl.readyOps(SelectionKeyImpl.java:87)
at java.nio.channels.SelectionKey.isReadable(SelectionKey.java:289)
at sun.nio.ch.SocketAdaptor$SocketInputStream.read(SocketAdaptor.java:222)
at sun.nio.ch.ChannelInputStream.read(ChannelInputStream.java:103)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:235)
at java.io.BufferedInputStream.read(BufferedInputStream.java:254)
at
org.infinispan.client.hotrod.impl.transport.tcp.TcpTransport.readByte(TcpTransport.java:179)
at
org.infinispan.client.hotrod.impl.protocol.Codec20.readMagic(Codec20.java:245)
at
org.infinispan.client.hotrod.impl.protocol.Codec20.readEvent(Codec20.java:101)
at
org.infinispan.client.hotrod.event.ClientListenerNotifier$EventDispatcher.run(ClientListenerNotifier.java:229)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
04:13:06,011 INFO [TestsuiteListener] (main) Running
org.infinispan.server.test.client.hotrod.HotRodRemoteCacheIT#testRemoveWithVersionAsync
04:13:06,030 WARN [ClientListenerNotifier] (HotRod-client-async-pool-2) ISPN004039:
Unable to complete reading event from server null
java.nio.channels.IllegalBlockingModeException
at sun.nio.ch.SocketAdaptor$SocketInputStream.read(SocketAdaptor.java:201)
at sun.nio.ch.ChannelInputStream.read(ChannelInputStream.java:103)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:235)
at java.io.BufferedInputStream.read(BufferedInputStream.java:254)
at
org.infinispan.client.hotrod.impl.transport.tcp.TcpTransport.readByte(TcpTransport.java:179)
at
org.infinispan.client.hotrod.impl.protocol.Codec20.readMagic(Codec20.java:245)
at
org.infinispan.client.hotrod.impl.protocol.Codec20.readEvent(Codec20.java:101)
at
org.infinispan.client.hotrod.event.ClientListenerNotifier$EventDispatcher.run(ClientListenerNotifier.java:229)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
{code}
The IllegalBlockingModeException then repeats for several tens/hundreds of MB of lines
{code}
Also fails in HotRodCustomMarshallerEventIT:
05:39:05,133 INFO [TestsuiteListener] (main) Running
org.infinispan.server.test.client.hotrod.HotRodCustomMarshallerEventIT#testEventReceiveBasic
05:39:05,267 INFO [RemoteCacheManager] (main) ISPN004021: Infinispan version:
6.2.0.ER2-redhat-1
05:39:05,313 WARN [ClientListenerNotifier] (HotRod-client-async-pool-0) ISPN004039:
Unable to complete reading event from server null
java.nio.channels.CancelledKeyException
at sun.nio.ch.SelectionKeyImpl.ensureValid(SelectionKeyImpl.java:73)
at sun.nio.ch.SelectionKeyImpl.readyOps(SelectionKeyImpl.java:87)
at java.nio.channels.SelectionKey.isReadable(SelectionKey.java:289)
at sun.nio.ch.SocketAdaptor$SocketInputStream.read(SocketAdaptor.java:222)
at sun.nio.ch.ChannelInputStream.read(ChannelInputStream.java:103)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:235)
at java.io.BufferedInputStream.read(BufferedInputStream.java:254)
at
org.infinispan.client.hotrod.impl.transport.tcp.TcpTransport.readByte(TcpTransport.java:179)
at
org.infinispan.client.hotrod.impl.protocol.Codec20.readMagic(Codec20.java:245)
at
org.infinispan.client.hotrod.impl.protocol.Codec20.readEvent(Codec20.java:101)
at
org.infinispan.client.hotrod.event.ClientListenerNotifier$EventDispatcher.run(ClientListenerNotifier.java:229)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
05:39:05,315 WARN [ClientListenerNotifier] (HotRod-client-async-pool-0) ISPN004039:
Unable to complete reading event from server null
java.nio.channels.IllegalBlockingModeException
at sun.nio.ch.SocketAdaptor$SocketInputStream.read(SocketAdaptor.java:201)
at sun.nio.ch.ChannelInputStream.read(ChannelInputStream.java:103)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:235)
at java.io.BufferedInputStream.read(BufferedInputStream.java:254)
at
org.infinispan.client.hotrod.impl.transport.tcp.TcpTransport.readByte(TcpTransport.java:179)
at
org.infinispan.client.hotrod.impl.protocol.Codec20.readMagic(Codec20.java:245)
at
org.infinispan.client.hotrod.impl.protocol.Codec20.readEvent(Codec20.java:101)
at
org.infinispan.client.hotrod.event.ClientListenerNotifier$EventDispatcher.run(ClientListenerNotifier.java:229)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
{code}