Uploaded image for project: 'Hadoop HDFS'
  1. Hadoop HDFS
  2. HDFS-9700

DFSClient and DFSOutputStream should set TCP_NODELAY on sockets for DataTransferProtocol

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 2.7.1, 2.6.3
    • Fix Version/s: 2.8.0, 3.0.0-alpha1
    • Component/s: hdfs-client
    • Labels:
      None

      Description

      In DFSClient.connectToDN() and DFSOutputStream.createSocketForPipeline(), we never call setTcpNoDelay() on the constructed socket before sending. In both cases, we should respect the value of ipc.client.tcpnodelay in the configuration.

      While this applies whether security is enabled or not, it seems to have a bigger impact on latency when security is enabled.

        Attachments

        1. HDFS-9700_branch-2.7.patch
          3 kB
          Gary Helmling
        2. HDFS-9700_branch-2.7-v2.patch
          4 kB
          Gary Helmling
        3. HDFS-9700.002.patch
          5 kB
          Gary Helmling
        4. HDFS-9700.003.patch
          5 kB
          Gary Helmling
        5. HDFS-9700.004.patch
          5 kB
          Gary Helmling
        6. HDFS-9700-branch-2.7.002.patch
          4 kB
          Gary Helmling
        7. HDFS-9700-branch-2.7.003.patch
          4 kB
          Gary Helmling
        8. HDFS-9700-v1.patch
          3 kB
          Gary Helmling
        9. HDFS-9700-v2.patch
          5 kB
          Gary Helmling

          Issue Links

            Activity

              People

              • Assignee:
                ghelmling Gary Helmling
                Reporter:
                ghelmling Gary Helmling
              • Votes:
                0 Vote for this issue
                Watchers:
                10 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: