This is an automated email from the ASF dual-hosted git repository.

hashutosh pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hive.git


The following commit(s) were added to refs/heads/master by this push:
     new e85c9e6  HIVE-22687 : Query hangs indefinitely if LLAP daemon 
registers after the query is submitted (Himanshu Mishra, Attila Magyar via 
Ashutosh Chauhan, Prasanth J)
e85c9e6 is described below

commit e85c9e6a2635e773c691e196bece759dfbe53878
Author: Ashutosh Chauhan <[email protected]>
AuthorDate: Sat Jun 13 14:21:06 2020 -0700

    HIVE-22687 : Query hangs indefinitely if LLAP daemon registers after the 
query is submitted (Himanshu Mishra, Attila Magyar via Ashutosh Chauhan, 
Prasanth J)
    
    Signed-off-by: Ashutosh Chauhan <[email protected]>
---
 .../hadoop/hive/llap/registry/impl/LlapZookeeperRegistryImpl.java     | 4 +++-
 .../src/java/org/apache/hadoop/hive/registry/impl/ZkRegistryBase.java | 2 +-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git 
a/llap-client/src/java/org/apache/hadoop/hive/llap/registry/impl/LlapZookeeperRegistryImpl.java
 
b/llap-client/src/java/org/apache/hadoop/hive/llap/registry/impl/LlapZookeeperRegistryImpl.java
index 92c4771..cf4e7b8 100644
--- 
a/llap-client/src/java/org/apache/hadoop/hive/llap/registry/impl/LlapZookeeperRegistryImpl.java
+++ 
b/llap-client/src/java/org/apache/hadoop/hive/llap/registry/impl/LlapZookeeperRegistryImpl.java
@@ -153,9 +153,10 @@ public class LlapZookeeperRegistryImpl
             HiveConf.getVarWithoutType(conf, 
ConfVars.LLAP_DAEMON_TASK_SCHEDULER_WAIT_QUEUE_SIZE));
     populateConfigValues(capacityValues.entrySet());
 
-    String uniqueId = registerServiceRecord(daemonZkRecord);
+    String uniqueId = UNIQUE_ID.toString();
     long znodeCreationTimeout = 120;
 
+    initializeWithoutRegisteringInternal();
     // Create a znode under the rootNamespace parent for this instance of the 
server
     try {
       slotZnode = new SlotZnode(
@@ -171,6 +172,7 @@ public class LlapZookeeperRegistryImpl
       throw (e instanceof IOException) ? (IOException)e : new IOException(e);
     }
 
+    registerServiceRecord(daemonZkRecord, uniqueId);
     LOG.info("Registered node. Created a znode on ZooKeeper for LLAP instance: 
rpc: {}, " +
             "shuffle: {}, webui: {}, mgmt: {}, znodePath: {}", rpcEndpoint, 
getShuffleEndpoint(),
             getServicesEndpoint(), getMngEndpoint(), 
getRegistrationZnodePath());
diff --git 
a/llap-client/src/java/org/apache/hadoop/hive/registry/impl/ZkRegistryBase.java 
b/llap-client/src/java/org/apache/hadoop/hive/registry/impl/ZkRegistryBase.java
index 2b21baa..249fa49 100644
--- 
a/llap-client/src/java/org/apache/hadoop/hive/registry/impl/ZkRegistryBase.java
+++ 
b/llap-client/src/java/org/apache/hadoop/hive/registry/impl/ZkRegistryBase.java
@@ -339,7 +339,7 @@ public abstract class ZkRegistryBase<InstanceType extends 
ServiceInstance> {
   }
 
 
-  final void initializeWithoutRegisteringInternal() throws IOException {
+  final protected void initializeWithoutRegisteringInternal() throws 
IOException {
     // Create a znode under the rootNamespace parent for this instance of the 
server
     try {
       try {

Reply via email to