You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Patrick Hunt (JIRA)" <ji...@apache.org> on 2011/06/24 23:43:48 UTC

[jira] [Updated] (HIVE-2139) Enables HiveServer to accept -hiveconf option

     [ https://issues.apache.org/jira/browse/HIVE-2139?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Patrick Hunt updated HIVE-2139:
-------------------------------

    Attachment: HIVE-2139.patch

This patch updates HiveServer and HiveMetastore to add proper cli handling - similar to that used in CliDriver (ie GnuParser).

There's a common HiveCli class that's used by both main classes.

I've attempted to make the cli's backward compatible with the prior command line processing. Notice I've "deprecated" (via warnings, but the code still runs) if the old style CLI usage is used.

commands such as the following now work as expected:

bin/hive --service hiveserver -t 200 -p 12000 --hiveconf hive.root.logger=DEBUG,console

as does the following which generates usage information:

bin/hive --service hiveserver -h

Note: HiveMetastore as not initializing log4j, I updated the code to do similar to HiveServer (otw the hiveconf hive.root.logger option above didn't work).


I couldn't find any tests for these changes, so I verfied the changes manually.


If these changes go through I'll update the wiki docs (which afaik are the only docs that need to be updated).

> Enables HiveServer to accept -hiveconf option
> ---------------------------------------------
>
>                 Key: HIVE-2139
>                 URL: https://issues.apache.org/jira/browse/HIVE-2139
>             Project: Hive
>          Issue Type: Improvement
>          Components: CLI
>         Environment: Linux + CDH3u0 (Hive 0.7.0+27.1-2~lucid-cdh3)
>            Reporter: Kazuki Ohta
>            Assignee: Patrick Hunt
>         Attachments: HIVE-2139.patch
>
>
> Currently, I'm trying to test HiveHBaseIntegration on HiveServer. But it doesn't seem to accept -hiveconf command.
> {code}
> hive --service hiveserver -hiveconf hbase.zookeeper.quorum=hdp0,hdp1,hdp2
> Starting Hive Thrift Server
> java.lang.NumberFormatException: For input string: "-hiveconf"
>         at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
>         at java.lang.Integer.parseInt(Integer.java:449)
>         at java.lang.Integer.parseInt(Integer.java:499)
>         at org.apache.hadoop.hive.service.HiveServer.main(HiveServer.java:382)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at org.apache.hadoop.util.RunJar.main(RunJar.java:186)
> {code}
> Therefore, you need to throw the query like "set hbase.zookeeper.quorum=hdp0,hdp1,hdp2" everytime. It's not convenient for separating the configuration between server-side and client-side.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira