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

Expose RetryingMetastoreClient to other external users of metastore client like Flume and Storm.

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 1.2.0
    • None
    • None

    Description

      HiveMetastoreClient is now being relied upon by external clients like Flume and Storm for streaming.
      When the thrift connection between MetaStoreClient and the meta store is broken (due to intermittent network issues or restarting of metastore) the Metastore does not handle the connection error and automatically re-establish the connection. Currently the client process needs to be restarted to re-establish the connection.
      The request here is consider supporting the following behavior: For each API invocation on the MetastoreClient, it should try to restablish the connection (if needed) once. And if that does not work out then throw a specific exception indicating the same. The client could then handle the issue by retrying the same API after some delay. By catching the specific connection exception, the client could decide how many times to retry before aborting.

      Hive does this internally using RetryingMetastoreClient. This jira is suppose to expose this mechanism to other users of that interface. This is useful for users of this interface, and from metastore HA point of view.

      Attachments

        1. HIVE-10507.1.patch
          3 kB
          Hari Sankar Sivarama Subramaniyan

        Activity

          People

            hsubramaniyan Hari Sankar Sivarama Subramaniyan
            hsubramaniyan Hari Sankar Sivarama Subramaniyan
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: