Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 0.23.0, 2.4.1
    • Fix Version/s: 2.6.0
    • Component/s: ipc
    • Labels:
      None
    • Target Version/s:
    • Hadoop Flags:
      Reviewed
    • Release Note:
      This change enables the TCP_NODELAY flag for all Hadoop IPC connections, hence bypassing TCP Nagling. Nagling interacts poorly with TCP delayed ACKs especially for request-response protocols.

      Description

      I think we should switch the default for the IPC client and server NODELAY options to true. As wikipedia says:

      In general, since Nagle's algorithm is only a defense against careless applications, it will not benefit a carefully written application that takes proper care of buffering; the algorithm has either no effect, or negative effect on the application.

      Since our IPC layer is well contained and does its own buffering, we shouldn't be careless.

        Issue Links

          Activity

          Todd Lipcon created issue -
          Todd Lipcon made changes -
          Field Original Value New Value
          Link This issue is related to HADOOP-8071 [ HADOOP-8071 ]
          Todd Lipcon made changes -
          Attachment hadoop-8069.txt [ 12514452 ]
          Todd Lipcon made changes -
          Status Open [ 1 ] Patch Available [ 10002 ]
          Todd Lipcon made changes -
          Status Patch Available [ 10002 ] Open [ 1 ]
          James Fitch made changes -
          Link This issue relates to HBASE-1177 [ HBASE-1177 ]
          Robert Joseph Evans made changes -
          Target Version/s 0.23.2 [ 12319855 ] 2.0.0, 3.0.0 [ 12320352, 12320357 ]
          Suresh Srinivas made changes -
          Link This issue is duplicated by HADOOP-7421 [ HADOOP-7421 ]
          Arpit Agarwal made changes -
          Status Open [ 1 ] Resolved [ 5 ]
          Hadoop Flags Reviewed [ 10343 ]
          Release Note This change enables the TCP_NODELAY flag for all Hadoop IPC connections, hence bypassing TCP Nagling. Nagling interacts poorly with TCP delayed ACKs especially for request-response protocols.
          Target Version/s 2.0.0-alpha, 3.0.0 [ 12320352, 12320357 ] 2.6.0 [ 12327179 ]
          Fix Version/s 3.0.0 [ 12320357 ]
          Fix Version/s 2.6.0 [ 12327179 ]
          Resolution Fixed [ 1 ]
          Arpit Agarwal made changes -
          Affects Version/s 2.4.1 [ 12326695 ]
          Allen Wittenauer made changes -
          Fix Version/s 3.0.0 [ 12320357 ]
          Arun C Murthy made changes -
          Status Resolved [ 5 ] Closed [ 6 ]

            People

            • Assignee:
              Todd Lipcon
              Reporter:
              Todd Lipcon
            • Votes:
              1 Vote for this issue
              Watchers:
              14 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development