Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Threaded View
Hive >> mail # user >> Why does "HiveException: Unable to fetch table XYZ" happen?


Copy link to this message
-
Re: Why does "HiveException: Unable to fetch table XYZ" happen?
In short, hiveserver has leaks, the upcoming hiveserver2 (and the
changes made in hive trunk due to it should prevent many of these. We
run our hiveserver's behind a load balancer (4 of them) basically this
increases the mean time to failure due to leaks. It would be good if
hive-server had some jmx or some method to determine # of connected
clients and then an admin can script a restart in a dead time.

IF you are using zk locking turn that off, zklocking+hiveserver leaks
much more then just plan hiveserver.

On Fri, Feb 8, 2013 at 7:04 AM, Jakub Holy <[EMAIL PROTECTED]> wrote:
> Hi everybody, I hope you'll be able to help me understand why our Hive
> server occasionally starts throwing "HiveException: Unable to fetch table
> <same table name>" and subsequently noe JDBC calls get through.
>
> I have observed this mostly after having started the server so I guess there
> could be some timing issue in Hive initialization. Most of the time Hive
> works all right so there no defect in our configuration/infrastructure per
> se.
>
> Any idea how this could have been happening and how to prevent/fix it? We
> use Hive 0.9.0 and connect to it via JDBC over Thrift. When I restart Hive,
> the problem disappears.
>
> Thanks a lot!
>
> Here is the full log with some context around:
>
> 2013-02-08 09:28:43,943 WARN  mapred.JobClient
> (JobClient.java:copyAndConfigureFiles(667)) - Use GenericOptionsParser for
> parsing the arguments. Applications should implement Tool for the same.
> 2013-02-08 09:28:53,399 ERROR ql.Driver (SessionState.java:printError(400))
> - FAILED: Execution Error, return code 2 from
> org.apache.hadoop.hive.ql.exec.MapRedTask
> 2013-02-08 09:29:36,774 ERROR DataNucleus.Plugin
> (Log4JLogger.java:error(115)) - Bundle "org.eclipse.jdt.core" requires
> "org.eclipse.core.resources" but it cannot be resolved.
> 2013-02-08 09:29:36,774 ERROR DataNucleus.Plugin
> (Log4JLogger.java:error(115)) - Bundle "org.eclipse.jdt.core" requires
> "org.eclipse.core.resources" but it cannot be resolved.
> 2013-02-08 09:29:36,777 ERROR DataNucleus.Plugin
> (Log4JLogger.java:error(115)) - Bundle "org.eclipse.jdt.core" requires
> "org.eclipse.core.runtime" but it cannot be resolved.
> 2013-02-08 09:29:36,777 ERROR DataNucleus.Plugin
> (Log4JLogger.java:error(115)) - Bundle "org.eclipse.jdt.core" requires
> "org.eclipse.core.runtime" but it cannot be resolved.
> 2013-02-08 09:29:36,777 ERROR DataNucleus.Plugin
> (Log4JLogger.java:error(115)) - Bundle "org.eclipse.jdt.core" requires
> "org.eclipse.text" but it cannot be resolved.
> 2013-02-08 09:29:36,777 ERROR DataNucleus.Plugin
> (Log4JLogger.java:error(115)) - Bundle "org.eclipse.jdt.core" requires
> "org.eclipse.text" but it cannot be resolved.
> 2013-02-08 09:29:51,997 ERROR parse.SemanticAnalyzer
> (SemanticAnalyzer.java:getMetaData(1128)) -
> org.apache.hadoop.hive.ql.metadata.HiveException: Unable to fetch table
> playerevents
>         at org.apache.hadoop.hive.ql.metadata.Hive.getTable(Hive.java:896)
>         at org.apache.hadoop.hive.ql.metadata.Hive.getTable(Hive.java:830)
>         at
> org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.getMetaData(SemanticAnalyzer.java:954)
>         at
> org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.analyzeInternal(SemanticAnalyzer.java:7524)
>         at
> org.apache.hadoop.hive.ql.parse.BaseSemanticAnalyzer.analyze(BaseSemanticAnalyzer.java:243)
>         at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:431)
>         at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:336)
>         at org.apache.hadoop.hive.ql.Driver.run(Driver.java:909)
>         at
> org.apache.hadoop.hive.service.HiveServer$HiveServerHandler.execute(HiveServer.java:191)
>         at
> org.apache.hadoop.hive.service.ThriftHive$Processor$execute.getResult(ThriftHive.java:629)
>         at
> org.apache.hadoop.hive.service.ThriftHive$Processor$execute.getResult(ThriftHive.java:617)
>         at
> org.apache.thrift.ProcessFunction.process(ProcessFunction.java:32)