[
https://issues.apache.org/jira/browse/HBASE-6825?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13560536#comment-13560536
]
nkeywal commented on HBASE-6825:
--------------------------------
If I'm not mistaken, the test uses a fixed port 8502, this should be changed,
if not we can have random failures when running the test suites.
For the issue itself, why should it not make it to the main code? I mean, we
test that, on windows, a critical feature works. If not we will have issues.
This should be in main, not in test, no?
I like the way the test is done, btw: we don't explicitly test the jdk1.7, so
it means that if it's fixed in a later jdk 1.6 patch the code will still be
right.
And actually, this seems to be fixed in 1.6 u34 says
http://www.oracle.com/technetwork/java/javase/documentation/overview-156328.html.
If it's the case, we could put it as a requirement and we're done (that's
acceptable for 0.96 imho. May be not for 0.94).
> [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
>
>
> 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