Haimei Li created HIVE-7458:
-------------------------------
Summary: Drop Hive Table If Exists Throw out Error by Spark
Key: HIVE-7458
URL: https://issues.apache.org/jira/browse/HIVE-7458
Project: Hive
Issue Type: Bug
Components: Spark
Environment: Spark(1.0.1), Hive(0.13.1)
Reporter: Haimei Li
I have Hive, MySQL and Spark. MySQL is Hive metastore_db. I follow this guide
to configurate it
(http://www.cloudera.com/content/cloudera-content/cloudera-docs/CDH4/4.2.0/CDH4-Installation-Guide/cdh4ig_topic_18_4.html).
It is ok for me to do drop table command under hive shell environment. But
when I enter into spark-shell env, I use hiveContext.hql("DROP TABLE IF EXISTS
hivetesting"). And then, I get following error:
ERROR Hive: NoSuchObjectException(message:default.hivetesting table not found)
at
org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$get_table_result$get_table_resultStandardScheme.read(ThriftHiveMetastore.java:27129)
at
org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$get_table_result$get_table_resultStandardScheme.read(ThriftHiveMetastore.java:27097)
at
org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$get_table_result.read(ThriftHiveMetastore.java:27028)
at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:78)
at
org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Client.recv_get_table(ThriftHiveMetastore.java:936)
at
org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Client.get_table(ThriftHiveMetastore.java:922)
at
org.apache.hadoop.hive.metastore.HiveMetaStoreClient.getTable(HiveMetaStoreClient.java:854)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at
org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.invoke(RetryingMetaStoreClient.java:89)
at com.sun.proxy.$Proxy11.getTable(Unknown Source)
at org.apache.hadoop.hive.ql.metadata.Hive.getTable(Hive.java:950)
......
I think when running under hive shell, it mutes this error. But under spark
shell, hive doesn't mute this error and throw out error directly. So If the
table doesn't exist, hive should not throw out error; it should throw out
warning.
--
This message was sent by Atlassian JIRA
(v6.2#6252)