Uploaded image for project: 'Hive'
  1. Hive
  2. HIVE-10384

RetryingMetaStoreClient does not retry wrapped TTransportExceptions

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.2.0
    • Component/s: Clients
    • Labels:
      None

      Description

      This bug is very similar to HIVE-9436, in that a TTransportException wrapped in a MetaException will not be retried. RetryingMetaStoreClient has a block of code above the MetaException handler that retries thrift exceptions, but this doesn't work when the exception is wrapped.

              if ((e.getCause() instanceof TApplicationException) ||
                  (e.getCause() instanceof TProtocolException) ||
                  (e.getCause() instanceof TTransportException)) {
                caughtException = (TException) e.getCause();
              } else if ((e.getCause() instanceof MetaException) &&
                  e.getCause().getMessage().matches("(?s).*JDO[a-zA-Z]*Exception.*")) {
                caughtException = (MetaException) e.getCause();
      

        Attachments

        1. HIVE-10384.patch
          0.7 kB
          Chaoyu Tang
        2. HIVE-10384.1.patch
          1 kB
          Chaoyu Tang

          Issue Links

            Activity

              People

              • Assignee:
                ctang.ma Chaoyu Tang
                Reporter:
                ekhliang Eric Liang
              • Votes:
                0 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: