[infinispan-issues] [JBoss JIRA] (ISPN-5221) Java Hotrod client, nearcache broken after a org.infinispan.client.hotrod.exceptions.TransportException:: java.net.SocketTimeoutException

Enrico Olivelli (JIRA) issues at jboss.org
Wed Mar 4 02:17:49 EST 2015


    [ https://issues.jboss.org/browse/ISPN-5221?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13046019#comment-13046019 ] 

Enrico Olivelli commented on ISPN-5221:
---------------------------------------

Another consequence of the SocketTimeoutException is that after that error the client only receives "byte[]" beans, as the unmarshaller does not work anymore.

I think that in case of SocketTimeout the inputstream goes out-of-synch and the marshaller cannot do its work properly anymore.

Apart from this last observation, IMHO I think that in case of SocketTimeout the TCP connection should be invalidated and than a new connection, possibily to another server, should be opened, that is to treat the SocketTmeout as a full server failure


> Java Hotrod client, nearcache broken after a org.infinispan.client.hotrod.exceptions.TransportException:: java.net.SocketTimeoutException
> -----------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: ISPN-5221
>                 URL: https://issues.jboss.org/browse/ISPN-5221
>             Project: Infinispan
>          Issue Type: Bug
>    Affects Versions: 7.1.0.Final
>         Environment: Infinispan 7.1.0Final
>            Reporter: Enrico Olivelli
>            Assignee: Galder Zamarreño
>             Fix For: 7.2.0.Final
>
>
> Using the LAZY nearcache (new in 7.1.0Final) when a java.net.SocketTimeoutException occurs against one of the given HotRod server the RemoteCache becames not usable any more
> This happens very frequently in our DEV environment, but I cannot reproduce it inside a test case
> This is the stacktrace
> {code}
>  15/02/13 14:51:39 ERROR event.ClientListenerNotifier: ISPN004043: Unrecoverable error reading event from server xxx.xxx.xxx/10.168.10.117:11222, exiting event reader thread
> org.infinispan.client.hotrod.exceptions.TransportException:: java.net.SocketTimeoutException
>       at org.infinispan.client.hotrod.impl.transport.tcp.TcpTransport.readByte(TcpTransport.java:184)
>       at org.infinispan.client.hotrod.impl.protocol.Codec20.readMagic(Codec20.java:282)
>       at org.infinispan.client.hotrod.impl.protocol.Codec20.readEvent(Codec20.java:126)
>       at org.infinispan.client.hotrod.event.ClientListenerNotifier$EventDispatcher.run(ClientListenerNotifier.java:236)
>       at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
>       at java.util.concurrent.FutureTask.run(FutureTask.java:266)
>       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.net.SocketTimeoutException
>       at sun.nio.ch.SocketAdaptor$SocketInputStream.read(SocketAdaptor.java:211)
>       at sun.nio.ch.ChannelInputStream.read(ChannelInputStream.java:103)
>       at java.io.BufferedInputStream.fill(BufferedInputStream.java:246)
>       at java.io.BufferedInputStream.read(BufferedInputStream.java:265)
>       at org.infinispan.client.hotrod.impl.transport.tcp.TcpTransport.readByte(TcpTransport.java:179)
>       ... 8 more
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.11#6341)



More information about the infinispan-issues mailing list