Gopal V created HIVE-4436:
-----------------------------

             Summary: hive.exec.parallel=true doesn't work on hadoop-2
                 Key: HIVE-4436
                 URL: https://issues.apache.org/jira/browse/HIVE-4436
             Project: Hive
          Issue Type: Bug
          Components: Query Processor
         Environment: Ubuntu LXC (hive-trunk)
            Reporter: Gopal V


While running a hive query with multiple independent stages, hive.exec.parallel 
is a valid optimization to use.

The query tested has 3 MR jobs - the first job is the root dependency and the 2 
further job depend on the first one.

When hive.exec.parallel is turned on, the job fails with the following exception

{code}
java.io.IOException: java.lang.InterruptedException
        at org.apache.hadoop.ipc.Client.call(Client.java:1214)
        at 
org.apache.hadoop.ipc.ProtobufRpcEngine$Invoker.invoke(ProtobufRpcEngine.java:202)
        at $Proxy12.mkdirs(Unknown Source)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at 
org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:164)
        at 
org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:83)
        at $Proxy12.mkdirs(Unknown Source)
        at 
org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolTranslatorPB.mkdirs(ClientNamenodeProtocolTranslatorPB.java:447)
        at org.apache.hadoop.hdfs.DFSClient.primitiveMkdir(DFSClient.java:2165)
        at org.apache.hadoop.hdfs.DFSClient.mkdirs(DFSClient.java:2136)
        at 
org.apache.hadoop.hdfs.DistributedFileSystem.mkdirs(DistributedFileSystem.java:544)
        at org.apache.hadoop.fs.FileSystem.mkdirs(FileSystem.java:1916)
        at 
org.apache.hadoop.hive.ql.exec.ExecDriver.createTmpDirs(ExecDriver.java:222)
        at 
org.apache.hadoop.hive.ql.exec.ExecDriver.execute(ExecDriver.java:444)
        at 
org.apache.hadoop.hive.ql.exec.MapRedTask.execute(MapRedTask.java:138)
        at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:145)
        at 
org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:57)
        at org.apache.hadoop.hive.ql.exec.TaskRunner.run(TaskRunner.java:47)
Caused by: java.lang.InterruptedException
        at 
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1279)
        at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:218)
        at java.util.concurrent.FutureTask.get(FutureTask.java:83)
        at org.apache.hadoop.ipc.Client$Connection.sendParam(Client.java:921)
        at org.apache.hadoop.ipc.Client.call(Client.java:1208)
{code}

The query plan is as follows

{code}
  Stage-9 is a root stage
  Stage-8 depends on stages: Stage-9
  Stage-3 depends on stages: Stage-8
  Stage-0 depends on stages: Stage-3
  Stage-4 depends on stages: Stage-0
  Stage-5 depends on stages: Stage-8
  Stage-1 depends on stages: Stage-5
  Stage-6 depends on stages: Stage-1

STAGE PLANS:
  Stage: Stage-9
    Map Reduce Local Work
  Stage: Stage-8
    Map Reduce
            Map Join Operator
  Stage: Stage-3
    Map Reduce
  Stage: Stage-0
    Move Operator
  Stage: Stage-4
    Stats-Aggr Operator
  Stage: Stage-5
    Map Reduce
  Stage: Stage-1
    Move Operator
  Stage: Stage-6
    Stats-Aggr Operator
{code}

I cannot conclude that this is purely a hive issue, will file a bug on HDFS if 
that does show up during triage.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to