Hello Alexey Serbin, Kudu Jenkins, Adar Dembo, Grant Henke, Hao Hao, I'd like you to reexamine a change. Please visit
http://gerrit.cloudera.org:8080/13510 to look at the new patch set (#3). 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). This patch additionally allows the -hive_metastore_sasl_enabled flag to be used without the -keytab flag if not using a kserver. Tool users should just be able to kinit to authenticate. To get this behavior, I've gated gflag validator on a new hidden gflag. 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/server/server_base.cc M src/kudu/thrift/client.h M src/kudu/tools/kudu-tool-test.cc M src/kudu/tools/tool_main.cc 15 files changed, 109 insertions(+), 45 deletions(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/10/13510/3 -- 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: newpatchset Gerrit-Change-Id: I9b9968bf0f8a55859a14421beda05cab3496b6c0 Gerrit-Change-Number: 13510 Gerrit-PatchSet: 3 Gerrit-Owner: Andrew Wong <aw...@cloudera.com> Gerrit-Reviewer: Adar Dembo <a...@cloudera.com> Gerrit-Reviewer: Alexey Serbin <aser...@cloudera.com> Gerrit-Reviewer: Andrew Wong <aw...@cloudera.com> Gerrit-Reviewer: Grant Henke <granthe...@apache.org> Gerrit-Reviewer: Hao Hao <hao....@cloudera.com> Gerrit-Reviewer: Kudu Jenkins (120)