Hello,

I'm working with Hive 0.9.0 with CDH4.1. I have a process which it's loading data in Hive every minute. It creates the partition if it's necessary. I have been monitoring this process for three days and I realize that there's a method (*listStorageDescriptorsWithCD*) which increases the execution time. First execution this method lasted about 15 millisencond and in the end it took more than 3 seconds (three days later), after that, Hive throws an exception and starts working again.

I have checking this method but I haven't figured out any suspicious, could it be a bug?



*2014-06-05 09:58:20,921* DEBUG metastore.ObjectStore (ObjectStore.java:listStorageDescriptorsWithCD(2036)) - Executing listStorageDescriptorsWithCD *2014-06-05 09:58:20,928* DEBUG metastore.ObjectStore (ObjectStore.java:listStorageDescriptorsWithCD(2045)) - Done executing query for listStorageDescriptorsWithCD


*2014-06-08 20:15:33,867* DEBUG metastore.ObjectStore (ObjectStore.java:listStorageDescriptorsWithCD(2036)) - Executing listStorageDescriptor
sWithCD
*2014-06-08 20:15:36,134* DEBUG metastore.ObjectStore (ObjectStore.java:listStorageDescriptorsWithCD(2045)) - Done executing query for listSt
orageDescriptorsWithCD



2014-06-08 20:16:34,600 DEBUG metastore.ObjectStore (ObjectStore.java:removeUnusedColumnDescriptor(1989)) - execute removeUnusedColumnDescr
iptor
*2014-06-08 20:16:34,600 DEBUG metastore.ObjectStore (ObjectStore.java:listStorageDescriptorsWithCD(2036)) - Executing listStorageDescriptor**
**sWithCD*
2014-06-08 20:16:34,805 ERROR metadata.Hive (Hive.java:getPartition(1453)) - org.apache.hadoop.hive.ql.metadata.HiveException: Unable to al
ter partition.
at org.apache.hadoop.hive.ql.metadata.Hive.alterPartition(Hive.java:429) at org.apache.hadoop.hive.ql.metadata.Hive.getPartition(Hive.java:1446) at org.apache.hadoop.hive.ql.metadata.Hive.loadPartition(Hive.java:1158) at org.apache.hadoop.hive.ql.exec.MoveTask.execute(MoveTask.java:304)
        at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:153)
at org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:57)
        at org.apache.hadoop.hive.ql.Driver.launchTask(Driver.java:1331)
        at org.apache.hadoop.hive.ql.Driver.execute(Driver.java:1117)
        at org.apache.hadoop.hive.ql.Driver.run(Driver.java:950)
at org.apache.hadoop.hive.service.HiveServer$HiveServerHandler.execute(HiveServer.java:191) at org.apache.hadoop.hive.service.ThriftHive$Processor$execute.getResult(ThriftHive.java:630) at org.apache.hadoop.hive.service.ThriftHive$Processor$execute.getResult(ThriftHive.java:618) at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:32)
        at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:34)
at org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:176) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:662)
Caused by: MetaException(message:The transaction for alter partition did not commit successfully.) at org.apache.hadoop.hive.metastore.ObjectStore.alterPartition(ObjectStore.java:1927)
        at sun.reflect.GeneratedMethodAccessor16.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.hadoop.hive.metastore.RetryingRawStore.invoke(RetryingRawStore.java:111)
        at $Proxy0.alterPartition(Unknown Source)
at org.apache.hadoop.hive.metastore.HiveAlterHandler.alterPartition(HiveAlterHandler.java:254) at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.rename_partition(HiveMetaStore.java:1816) at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.rename_partition(HiveMetaStore.java:1788) at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.alter_partition(HiveMetaStore.java:1771) at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.alter_partition(HiveMetaStoreClient.java:834) at org.apache.hadoop.hive.ql.metadata.Hive.alterPartition(Hive.java:425)
        ... 17 more

2014-06-08 20:16:34,827 ERROR exec.Task (SessionState.java:printError(403)) - Failed with exception org.apache.hadoop.hive.ql.metadata.HiveException: Unable to alter partition. org.apache.hadoop.hive.ql.metadata.HiveException: org.apache.hadoop.hive.ql.metadata.HiveException: Unable to alter partition. at org.apache.hadoop.hive.ql.metadata.Hive.getPartition(Hive.java:1454) at org.apache.hadoop.hive.ql.metadata.Hive.loadPartition(Hive.java:1158) at org.apache.hadoop.hive.ql.exec.MoveTask.execute(MoveTask.java:304)
        at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:153)
at org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:57)
        at org.apache.hadoop.hive.ql.Driver.launchTask(Driver.java:1331)
        at org.apache.hadoop.hive.ql.Driver.execute(Driver.java:1117)
        at org.apache.hadoop.hive.ql.Driver.run(Driver.java:950)
at org.apache.hadoop.hive.service.HiveServer$HiveServerHandler.execute(HiveServer.java:191) at org.apache.hadoop.hive.service.ThriftHive$Processor$execute.getResult(ThriftHive.java:630) at org.apache.hadoop.hive.service.ThriftHive$Processor$execute.getResult(ThriftHive.java:618) at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:32)
        at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:34)
at org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:176) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:662)
Caused by: org.apache.hadoop.hive.ql.metadata.HiveException: Unable to alter partition. at org.apache.hadoop.hive.ql.metadata.Hive.alterPartition(Hive.java:429) at org.apache.hadoop.hive.ql.metadata.Hive.getPartition(Hive.java:1446)
        ... 16 more
Caused by: MetaException(message:The transaction for alter partition did not commit successfully.) at org.apache.hadoop.hive.metastore.ObjectStore.alterPartition(ObjectStore.java:1927)
        at sun.reflect.GeneratedMethodAccessor16.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.hadoop.hive.metastore.RetryingRawStore.invoke(RetryingRawStore.java:111)
        at $Proxy0.alterPartition(Unknown Source)
at org.apache.hadoop.hive.metastore.HiveAlterHandler.alterPartition(HiveAlterHandler.java:254) at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.rename_partition(HiveMetaStore.java:1816) at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.rename_partition(HiveMetaStore.java:1788) at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.alter_partition(HiveMetaStore.java:1771) at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.alter_partition(HiveMetaStoreClient.java:834) at org.apache.hadoop.hive.ql.metadata.Hive.alterPartition(Hive.java:425)
        ... 17 more
2014-06-08 20:16:34,852 ERROR ql.Driver (SessionState.java:printError(403)) - FAILED: Execution Error, return code 1 from org.apache.hadoop
.hive.ql.exec.MoveTask


--
*Fernando Agudo Tarancón*
/Big Data Software Engineer/

Telf.: +34 917 680 490
Fax: +34 913 833 301
C/ Manuel Tovar, 49-53 - 28034 Madrid - Spain

_http://www.bidoop.es_

Reply via email to