You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mina.apache.org by "Emmanuel Lecharny (JIRA)" <ji...@apache.org> on 2016/02/12 21:37:19 UTC

[jira] [Updated] (DIRMINA-379) setKeepAlive/setTcpNoDelay and exceptions in Windows Vista

     [ https://issues.apache.org/jira/browse/DIRMINA-379?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Emmanuel Lecharny updated DIRMINA-379:
--------------------------------------
    Fix Version/s:     (was: 2.0.12)
                   2.0.13

> setKeepAlive/setTcpNoDelay and exceptions in Windows Vista
> ----------------------------------------------------------
>
>                 Key: DIRMINA-379
>                 URL: https://issues.apache.org/jira/browse/DIRMINA-379
>             Project: MINA
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.0.3, 1.1.0, 2.0.0-M1
>         Environment: Windows Vista Home Premium Italian
> Java SE 1.5.0_11, Java SE 1.6 Update 1, Java SE 1.4.2_12
>            Reporter: Stefano Bagnara
>             Fix For: 2.0.13
>
>         Attachments: MultiConnectTest.java
>
>
> When I ran my application under Vista I get this exception:
> Exception in thread "Thread-4" org.apache.mina.common.RuntimeIOException: java.net.SocketException: Invalid argument: sun.nio.ch.Net.setIntOption
> 	at org.apache.mina.transport.socket.nio.SocketSessionImpl$SessionConfigImpl.setKeepAlive(SocketSessionImpl.java:252)
> 	at org.apache.mina.transport.socket.nio.SocketSessionImpl.<init>(SocketSessionImpl.java:94)
> 	at org.apache.mina.transport.socket.nio.SocketConnector.newSession(SocketConnector.java:350)
> 	at org.apache.mina.transport.socket.nio.SocketConnector.processSessions(SocketConnector.java:290)
> 	at org.apache.mina.transport.socket.nio.SocketConnector.access$900(SocketConnector.java:53)
> 	at org.apache.mina.transport.socket.nio.SocketConnector$Worker.run(SocketConnector.java:395)
> 	at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:43)
> 	at java.lang.Thread.run(Thread.java:595)
> Caused by: java.net.SocketException: Invalid argument: sun.nio.ch.Net.setIntOption
> 	at sun.nio.ch.Net.setIntOption0(Native Method)
> 	at sun.nio.ch.Net.setIntOption(Net.java:152)
> 	at sun.nio.ch.SocketChannelImpl$1.setInt(SocketChannelImpl.java:372)
> 	at sun.nio.ch.SocketOptsImpl.setBoolean(SocketOptsImpl.java:38)
> 	at sun.nio.ch.SocketOptsImpl.keepAlive(SocketOptsImpl.java:92)
> 	at sun.nio.ch.OptionAdaptor.setKeepAlive(OptionAdaptor.java:139)
> 	at sun.nio.ch.SocketAdaptor.setKeepAlive(SocketAdaptor.java:322)
> 	at org.apache.mina.transport.socket.nio.SocketSessionImpl$SessionConfigImpl.setKeepAlive(SocketSessionImpl.java:248)
> 	... 7 more
> I had to remove the following lines from the SocketSessionImpl constructor:
> this.config.setKeepAlive( cfg.isKeepAlive() );
> this.config.setTcpNoDelay( cfg.isTcpNoDelay() );
> and now it works.
> No matter if I change the configuration to let them return true or false, I keep getting the exception if I don't remove the call at all.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)