hive-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Prasanth Jayachandran (JIRA)" <>
Subject [jira] [Commented] (HIVE-15722) LLAP: Avoid marking a query as complete if the AMReporter runs into an error
Date Thu, 26 Jan 2017 09:22:24 GMT


Prasanth Jayachandran commented on HIVE-15722:

Do we need a writeLock? The patch doesn't seem to be mutating the map. 
Also in registerFragment(), we acquire a readLock but are mutating the map.
Both doesn't seem to be correct?

> LLAP: Avoid marking a query as complete if the AMReporter runs into an error
> ----------------------------------------------------------------------------
>                 Key: HIVE-15722
>                 URL:
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Siddharth Seth
>            Assignee: Siddharth Seth
>         Attachments: HIVE-15722.01.patch, HIVE-15722.02.patch
> When the AMReporter runs into an error (typically intermittent), we end up killing all
fragments on the daemon. This is done by marking the query as complete.
> The AM would continue to try scheduling on this node - which would lead to task failures
if the daemon structures are updated.
> Instead of clearing the structures, it's better to kill the fragments, and let a queryComplete
call come in from the AM.
> Later, we could make enhancements in the AM to avoid such nodes. That's not simple though,
since the AM will not find out what happened due to the communication failure from the daemon.
> Leads to 
> {code}
> org.apache.hadoop.ipc.RemoteException(java.lang.RuntimeException): Dag query16 already
complete. Rejecting fragment [Map 7, 29, 0]
> 	at org.apache.hadoop.hive.llap.daemon.impl.QueryTracker.registerFragment(
> 	at org.apache.hadoop.hive.llap.daemon.impl.ContainerRunnerImpl.submitWork(
> 	at org.apache.hadoop.hive.llap.daemon.impl.LlapDaemon.submitWork(
> 	at org.apache.hadoop.hive.llap.daemon.impl.LlapProtocolServerImpl.submitWork(
> 	at org.apache.hadoop.hive.llap.daemon.rpc.LlapDaemonProtocolProtos$LlapDaemonProtocol$2.callBlockingMethod(
> 	at org.apache.hadoop.ipc.ProtobufRpcEngine$Server$
> 	at org.apache.hadoop.ipc.RPC$
> 	at org.apache.hadoop.ipc.Server$Handler$
> 	at org.apache.hadoop.ipc.Server$Handler$
> 	at Method)
> 	at
> 	at
> 	at org.apache.hadoop.ipc.Server$
> {code}

This message was sent by Atlassian JIRA

View raw message