You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Hari Sankar Sivarama Subramaniyan (JIRA)" <ji...@apache.org> on 2015/04/28 00:48:39 UTC

[jira] [Created] (HIVE-10507) Expose RetryingMetastoreClient to other external users of metastore client like Flume and Storm.

Hari Sankar Sivarama Subramaniyan created HIVE-10507:
--------------------------------------------------------

             Summary: Expose  RetryingMetastoreClient to other external users of metastore client like Flume and Storm.
                 Key: HIVE-10507
                 URL: https://issues.apache.org/jira/browse/HIVE-10507
             Project: Hive
          Issue Type: Bug
            Reporter: Hari Sankar Sivarama Subramaniyan
            Assignee: Hari Sankar Sivarama Subramaniyan


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.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)