zengyongping created HIVE-8440:
----------------------------------

             Summary: Hiveserver block query
                 Key: HIVE-8440
                 URL: https://issues.apache.org/jira/browse/HIVE-8440
             Project: Hive
          Issue Type: Bug
          Components: Query Processor
    Affects Versions: 0.12.0
         Environment: OS:Red Hat Enterprise Linux Server release 6.5 (Santiago)
CPU:64 cores
Memory:64GB

            Reporter: zengyongping
            Priority: Critical


In our  environment Hiveserver handle approximately 15000 jobs per 
day。Sometimes we found a large number of  ETL tasks wait in our ETL schedule  
queue to run。In this situation only few Hadoop Job in Hadoop cluster,many maps 
and reduces slots free.we view Hiveserver heap found Hiveserver block a large 
number of query:
"pool-1-thread-17903" prio=10 tid=0x00007f89589c8000 nid=0x13865 waiting for 
monitor entry [0x00007f893413b000]
   java.lang.Thread.State: BLOCKED (on object monitor)
        at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:977)
        - waiting to lock <0x00000006000ac458> (a java.lang.Object)
        at org.apache.hadoop.hive.ql.Driver.run(Driver.java:888)
        at 
org.apache.hadoop.hive.service.HiveServer$HiveServerHandler.execute(HiveServer.java:198)
        at 
org.apache.hadoop.hive.service.ThriftHive$Processor$execute.getResult(ThriftHive.java:644)
        at 
org.apache.hadoop.hive.service.ThriftHive$Processor$execute.getResult(ThriftHive.java:628)
        at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39)
        at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39)
        at 
org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:206)
        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)

     It is a problem of HiveServer cannot handle concurrent requests from more 
than one client.?Why HiveServer cannot handle concurrent requests?
https://github.com/apache/hive/blob/branch-0.12/ql/src/java/org/apache/hadoop/hive/ql/Driver.java#L975
Under code in org.apache.hadoop.hive.ql cause Hiveserver cannot handle 
concurrent requests?
 int ret;
    synchronized (compileMonitor) {
      ret = compile(command);
    }





--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to