Uploaded image for project: 'ZooKeeper'
  1. ZooKeeper
  2. ZOOKEEPER-1848

[WINDOWS] Java NIO socket channels does not work with Windows ipv6 on JDK6

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • None
    • None
    • None

    Description

      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.

      See HBASE-6825 for reference.

      Attachments

        1. zookeeper-1848_v1.patch
          5 kB
          Enis Soztutar
        2. zookeeper-1848_v2.patch
          5 kB
          Enis Soztutar

        Activity

          People

            enis Enis Soztutar
            enis Enis Soztutar
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated: