Hi,
I'm testing out the REST interface to webhcat and stuck doing basic DDL 
operations.

Background on installation:
--I installed packages with apt-get
--I'm on CDH4.5

I successfully have created and loaded tables with chat command line.  
E.g.:hcat -e 'create table testtable (a string, b string, c int);'
I did some loading by hand and via Pig.  So I think the HCatalog service is 
running correctly.

Here's what I am seeing via curl:
$ curl 
http://localhost:50111/templeton/v1/ddl/database/testtable?user.name=<myname>

{"errorDetail":"\norg.apache.hadoop.hive.ql.metadata.HiveException: 
org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.RuntimeException: 
Unable to instantiate 
org.apache.hadoop.hive.metastore.HiveMetaStoreClient\n\tat 
org.apache.hadoop.hive.ql.exec.DDLTask.descDatabase(DDLTask.java:2647)\n\tat 
org.apache.hadoop.hive.ql.exec.DDLTask.execute(DDLTask.java:244)\n\tat 
org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:138)\n\tat 
org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:66)\n\tat
 org.apache.hadoop.hive.ql.Driver.launchTask(Driver.java:1383)\n\tat 
org.apache.hadoop.hive.ql.Driver.execute(Driver.java:1169)\n\tat 
org.apache.hadoop.hive.ql.Driver.run(Driver.java:982)\n\tat 
org.apache.hadoop.hive.ql.Driver.run(Driver.java:902)\n\tat 
org.apache.hcatalog.cli.HCatDriver.run(HCatDriver.java:43)\n\tat 
org.apache.hcatalog.cli.HCatCli.processCmd(HCatCli.java:251)\n\tat 
org.apache.hcatalog.cli.HCatCli.processLine(HCatCli.java:205)\n\tat 
org.apache.hcatalog.cli.HCatCli.main(HCatCli.java:164)\n\tat 
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n\tat 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)\n\tat
 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n\tat
 java.lang.reflect.Method.invoke(Method.java:622)\n\tat 
org.apache.hadoop.util.RunJar.main(RunJar.java:208)\n","error":"FAILED: Error 
in metadata: org.apache.hadoop.hive.ql.metadata.HiveException: 
java.lang.RuntimeException: Unable to instantiate 
org.apache.hadoop.hive.metastore.HiveMetaStoreClient","errorCode":500}

I found a bunch of help online so I tried adding some things in webhcat-site.xml
-templeton.libjars: I added paths to a bunch of libraries, including 
'/usr/lib/hive/lib/hive-metastore-0.10.0-cdh4.5.0.jar' which has the missing 
HiveMetaStoreClient class.  Then restarted webhcat, can't tell if it picked up 
this property.
-Less promising, I uploaded the hive tar.gz file to HDFS and updated their 
paths in templeton.hive.archive and templeton.hive.path.  Skeptical the server 
would be looking in HDFS for libraries, and this didn't help either.
-There is older material from ~2011 as well, but ignoring that.

If you have any suggestions please share.  Thanks in advance!

-Adam

Reply via email to