Uploaded image for project: 'IMPALA'
  1. IMPALA
  2. IMPALA-7300 Clean up items from KRPC milestone 1
  3. IMPALA-6159

DataStreamSender should transparently handle some connection reset by peer

    XMLWordPrintableJSON

Details

    • Sub-task
    • Status: Resolved
    • Critical
    • Resolution: Fixed
    • Impala 2.12.0
    • Impala 3.3.0
    • Distributed Exec
    • None
    • ghx-label-4

    Description

      A client to server KRPC connection can become stale if the socket was closed on the server side due to various reasons such as idle connection removal or remote Impalad restart. Currently, the KRPC code will invoke the callback of all RPCs using that stale connection with the failed status (e.g. "Connection reset by peer"). DataStreamSender should pattern match against certain error string (as they are mostly output from strerror()) and retry the RPC transparently. This may be also be useful for KUDU-2192 which tracks the effort to detect stuck connection and close them. In which case, we may also want to transparently retry the RPC

      FWIW, KUDU-279 is tracking the effort to have a cleaner protocol for connection teardown due to idle client connection removal on the server side. However, Impala still needs to handle other reasons for a stale connection.

      Attachments

        Issue Links

          Activity

            People

              kwho Michael Ho
              kwho Michael Ho
              Votes:
              0 Vote for this issue
              Watchers:
              10 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: