You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@bigtop.apache.org by "Mark Grover (JIRA)" <ji...@apache.org> on 2014/07/02 02:11:24 UTC

[jira] [Commented] (BIGTOP-1338) Provide wrapper for metatool and schematool

    [ https://issues.apache.org/jira/browse/BIGTOP-1338?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14049447#comment-14049447 ] 

Mark Grover commented on BIGTOP-1338:
-------------------------------------

I poked some more and at this point, I am not in favor of creating /usr/bin scripts for these scripts and here is why:
1. They are pretty generic names, putting a generic client binary (like metatool or schematool) in /usr/bin is going to lead to confusion.
2. These scripts are used rarely:
metatool is used to change Hive metadata. Here is some context:
Hive metadata stores the complete FQDN for namenode. However, this becomes a problem with NameNode HA where in case of an automatic failover, this name has to be dynamically changed. Consequently, a change was made in Hive to store an alias for namenode FQDN in metadata and this alias will be substituted with the appropriate name of the active NN in an HA set up. But to allow for folks to change their existing metadata from their original NN name to this new alias, a new tool was needed to do this bulk change. That tool is metatool. So, it's used rarely and it's most common use-case is the one time when a non-HDFS-HA cluster is migrated to be a HDFS-HA cluster.

schematool is used a little more frequently but still not as frequently. Hive metastore schema has, and is, evolving over time. To track this, Hive is assigning version numbers to such schema definitions and offers scripts for each backend DB (derby, MySQL, PostgreSQL, etc.) to migrate from one version to another. When upgrading Hive across versions which involve metadata changes, users can use this tool to update the hive metadata schema. However, they can also, directly invoke the scripts available in Hive without using the tool.

In any case, if you look at scripts like hive, beeline, etc. which users use in their day-to-day life, the schematool and metatool scripts are used much less frequently and given their rather generic name, I am personally of the opinion, they are better off left without /usr/bin binaries. I am happy to listen though if you disagree.

> Provide wrapper for metatool and schematool
> -------------------------------------------
>
>                 Key: BIGTOP-1338
>                 URL: https://issues.apache.org/jira/browse/BIGTOP-1338
>             Project: Bigtop
>          Issue Type: Improvement
>          Components: Build
>            Reporter: Guo Ruijing
>
> bigtop provided wrapper for hive, beeline & hiveserver2 in ./bigtop-packages/src/common/hive/install_hive.sh as:
> /usr/bin/hive --> /usr/lib/hive/bin/hive
> /usr/bin/beeline --> /usr/lib/hive/bin/beeline
> bigtop may provide wrapper for metatool & schematool as:
> /usr/bin/metatool --> /usr/lib/hive/bin/metatool
> /usr/bin/schematool --> /usr/lib/hive/bin/schematool



--
This message was sent by Atlassian JIRA
(v6.2#6252)