[jboss-jira] [JBoss JIRA] Resolved: (JGRP-252) TCP_NIO support is impacted by a Sun Java bug during TCP_NIO shutdown operation

Scott Marlow (JIRA) jira-events at jboss.com
Tue Jul 11 17:18:11 EDT 2006


     [ http://jira.jboss.com/jira/browse/JGRP-252?page=all ]

Scott Marlow resolved JGRP-252.
-------------------------------

    Resolution: Done

Sun will fix for the jdk 1.5.0_08 release.

> TCP_NIO support is impacted by a Sun Java bug during TCP_NIO shutdown operation
> -------------------------------------------------------------------------------
>
>                 Key: JGRP-252
>                 URL: http://jira.jboss.com/jira/browse/JGRP-252
>             Project: JGroups
>          Issue Type: Sub-task
>    Affects Versions: 2.4
>         Environment: Novell Linux Desktop
> Linux smarlow 2.6.5-7.243-default #1 Mon Dec 5 21:08:42 UTC 2005 i686 i686 i386 GNU/Linux
>            Reporter: Scott Marlow
>         Assigned To: Scott Marlow
>            Priority: Minor
>         Attachments: config.txt, sendernio.sh, tcp_nio.xml
>
>
> During TCP_NIO, I used to ignore exceptions thrown while closing connections at shutdown time.  I changed this for the 2.4 release, however, there seems to be a Java bug that Sun just fixed in Mustang build 89.  I verified that the Sun fix works by downloading jdk-6-rc-bin-b89-linux-i586-22_jun_2006.bin from http://download.java.net/jdk6/binaries/ and running the org.jgroups.tests.perf.Test.  I asked my support contact at Sun if they could also fix this bug in the Java 5 release, I'll update this bug when I hear the answer.
> I created this Jira to track the issue since others will likely see the same problem.  When Sun reports back their plans for a Java5 fix, I'll update this Jira.  The Sun bug id is supposed to be 6445262 but I cannot seem to find that on the Java bug parade (perhaps its marked private.)
> Run the attached script files to recreate.
> The stack trace below shows that the unexpected error occurs when we attempt to close the channel (socket connection):
> SEVERE: error closing socket connection
> java.io.IOException: Invalid argument
>         at sun.nio.ch.NativeThread.signal(Native Method)
>         at sun.nio.ch.SocketChannelImpl.implCloseSelectableChannel(SocketChannelImpl.java:634)
>         at java.nio.channels.spi.AbstractSelectableChannel.implCloseChannel(AbstractSelectableChannel.java:201)
>         at java.nio.channels.spi.AbstractInterruptibleChannel.close(AbstractInterruptibleChannel.java:97)
>         at org.jgroups.blocks.ConnectionTableNIO$Connection.closeSocket(ConnectionTableNIO.java:913)
>         at org.jgroups.blocks.ConnectionTableNIO$Connection.destroy(ConnectionTableNIO.java:880)
>         at org.jgroups.blocks.ConnectionTableNIO.stop(ConnectionTableNIO.java:312)
>         at org.jgroups.protocols.TCP_NIO.stop(TCP_NIO.java:71)
>         at org.jgroups.stack.Protocol.handleSpecialDownEvent(Protocol.java:604)
>         at org.jgroups.stack.Protocol.receiveDownEvent(Protocol.java:514)
>         at org.jgroups.stack.Protocol.passDown(Protocol.java:551)
>         at org.jgroups.protocols.Discovery.down(Discovery.java:333)
>         at org.jgroups.stack.Protocol.receiveDownEvent(Protocol.java:517)
>         at org.jgroups.stack.Protocol.passDown(Protocol.java:551)
>         at org.jgroups.protocols.FD_SOCK.down(FD_SOCK.java:395)
>         at org.jgroups.stack.Protocol.receiveDownEvent(Protocol.java:517)
>         at org.jgroups.stack.Protocol.passDown(Protocol.java:551)
>         at org.jgroups.protocols.pbcast.NAKACK.down(NAKACK.java:480)
>         at org.jgroups.stack.Protocol.receiveDownEvent(Protocol.java:517)
>         at org.jgroups.stack.Protocol.passDown(Protocol.java:551)
>         at org.jgroups.protocols.pbcast.STABLE.down(STABLE.java:283)
>         at org.jgroups.stack.Protocol.receiveDownEvent(Protocol.java:517)
>         at org.jgroups.stack.Protocol.passDown(Protocol.java:551)
>         at org.jgroups.protocols.VIEW_SYNC.down(VIEW_SYNC.java:166)
>         at org.jgroups.stack.Protocol.receiveDownEvent(Protocol.java:517)
>         at org.jgroups.stack.Protocol.passDown(Protocol.java:551)
>         at org.jgroups.protocols.pbcast.GMS.down(GMS.java:797)
>         at org.jgroups.stack.Protocol.receiveDownEvent(Protocol.java:517)
>         at org.jgroups.stack.ProtocolStack.down(ProtocolStack.java:385)
>         at org.jgroups.stack.ProtocolStack.stopStack(ProtocolStack.java:324)
>         at org.jgroups.JChannel._close(JChannel.java:1286)
>         at org.jgroups.JChannel.shutdown(JChannel.java:492)
>         at org.jgroups.tests.perf.transports.JGroupsTransport.stop(JGroupsTransport.java:59)
>         at org.jgroups.tests.perf.Test.stop(Test.java:208)
>         at org.jgroups.tests.perf.Test.main(Test.java:705)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the jboss-jira mailing list