[ https://issues.apache.org/jira/browse/HBASE-6825?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13566806#comment-13566806 ]
Enis Soztutar commented on HBASE-6825: -------------------------------------- ops, that should be -Djava.net.preferIPv4Stack=true instead of -DTestIPv6NIOServerSocketChannel=true > [WINDOWS] Java NIO socket channels does not work with Windows ipv6 > ------------------------------------------------------------------ > > Key: HBASE-6825 > URL: https://issues.apache.org/jira/browse/HBASE-6825 > Project: HBase > Issue Type: Sub-task > Affects Versions: 0.94.3, 0.96.0 > Environment: JDK6 on windows for ipv6. > Reporter: Enis Soztutar > Assignee: Enis Soztutar > Attachments: hbase-6825_v3-0.94.patch, hbase-6825_v3-trunk.patch, > hbase-6825_v4-trunk.patch > > > While running the test TestAdmin.testCheckHBaseAvailableClosesConnection(), I > noticed that it takes very long, since it sleeps for 2sec * 500, because of > zookeeper retries. > The root cause of the problem is that ZK uses Java NIO to create > ServerSorcket's from ServerSocketChannels. Under windows, the ipv4 and ipv6 > is implemented independently, and Java seems that it cannot reuse the same > socket channel for both ipv4 and ipv6 sockets. We are getting > "java.net.SocketException: Address family not supported by protocol > family" exceptions. When, ZK client resolves "localhost", it gets both v4 > 127.0.0.1 and v6 ::1 address, but the socket channel cannot bind to both v4 > and v6. > The problem is reported as: > http://bugs.sun.com/view_bug.do?bug_id=6230761 > http://stackoverflow.com/questions/1357091/binding-an-ipv6-server-socket-on-windows > Although the JDK bug is reported as resolved, I have tested with jdk1.6.0_33 > without any success. Although JDK7 seems to have fixed this problem. In ZK, > we can replace the ClientCnxnSocket implementation from ClientCnxnSocketNIO > to a non-NIO one, but I am not sure that would be the way to go. > Disabling ipv6 resolution of "localhost" is one other approach. I'll test it > to see whether it will be any good. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira