Hello Alexey Serbin, Grant Henke, Hao Hao,

I'd like you to do a code review. Please visit

    http://gerrit.cloudera.org:8080/13510

to review the following change.


Change subject: hms: allow for tooling to run without Kudu plugin
......................................................................

hms: allow for tooling to run without Kudu plugin

Currently, whenever an HMS client successfully connects to the HMS, it
checks the various HMS service configurations (e.g. that it is using the
Kudu-HMS plugin), returning an error if any are misconfigured. This is
important to make it much more obvious when the Kudu Master's HMS
synchronization is misconfigured.

It is still useful for other HMS clients (e.g. that used by the HMS
tooling) to operate on an HMS instance that is not configured with the
Kudu-HMS plugin et al.

This patch removes the requirement by plumbing the option to the HMS
client as a member of ThriftOptions. This was the most straightforward
way to plumb this option from the HmsCatalog to the HmsClient, given the
templating layered in between them for HA. Besides, we can use this
option in the future if we ever want to verify the configuration of
Thrift-based clients for other services (e.g. Sentry).

To test, I added an HmsMode that starts the HMS without the Kudu-HMS
plugin installed and used it in a couple of HMS tooling tests. I
considered reusing the ENABLE_HIVE_METASTORE HmsMode, but opted not to
since some tests are greatly simplified by ENABLE_HIVE_METASTORE having
the Kudu-HMS plugin installed (e.g. restarting the HMS isn't required to
enable the Kudu-HMS integration).

Change-Id: I9b9968bf0f8a55859a14421beda05cab3496b6c0
---
M src/kudu/common/common.proto
M src/kudu/hms/hms_catalog.cc
M src/kudu/hms/hms_catalog.h
M src/kudu/hms/hms_client-test.cc
M src/kudu/hms/hms_client.cc
M src/kudu/hms/hms_client.h
M src/kudu/hms/mini_hms.cc
M src/kudu/hms/mini_hms.h
M src/kudu/master/catalog_manager.cc
M src/kudu/master/master.cc
M src/kudu/mini-cluster/external_mini_cluster.cc
M src/kudu/thrift/client.h
M src/kudu/tools/kudu-tool-test.cc
13 files changed, 102 insertions(+), 44 deletions(-)



  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/10/13510/1
--
To view, visit http://gerrit.cloudera.org:8080/13510
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I9b9968bf0f8a55859a14421beda05cab3496b6c0
Gerrit-Change-Number: 13510
Gerrit-PatchSet: 1
Gerrit-Owner: Andrew Wong <aw...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <aser...@cloudera.com>
Gerrit-Reviewer: Grant Henke <granthe...@apache.org>
Gerrit-Reviewer: Hao Hao <hao....@cloudera.com>

Reply via email to