[ https://issues.apache.org/jira/browse/HIVE-22751?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17022374#comment-17022374 ]
Hive QA commented on HIVE-22751: -------------------------------- Here are the results of testing the latest attachment: https://issues.apache.org/jira/secure/attachment/12991397/HIVE-22751.1.patch {color:red}ERROR:{color} -1 due to no test(s) being added or modified. {color:green}SUCCESS:{color} +1 due to 17945 tests passed Test results: https://builds.apache.org/job/PreCommit-HIVE-Build/20302/testReport Console output: https://builds.apache.org/job/PreCommit-HIVE-Build/20302/console Test logs: http://104.198.109.242/logs/PreCommit-HIVE-Build-20302/ Messages: {noformat} Executing org.apache.hive.ptest.execution.TestCheckPhase Executing org.apache.hive.ptest.execution.PrepPhase Executing org.apache.hive.ptest.execution.YetusPhase Executing org.apache.hive.ptest.execution.ExecutionPhase Executing org.apache.hive.ptest.execution.ReportingPhase {noformat} This message is automatically generated. ATTACHMENT ID: 12991397 - PreCommit-HIVE-Build > Move locking in HiveServer2::isDeregisteredWithZooKeeper to > ZooKeeperHiveHelper > ------------------------------------------------------------------------------- > > Key: HIVE-22751 > URL: https://issues.apache.org/jira/browse/HIVE-22751 > Project: Hive > Issue Type: Improvement > Components: HiveServer2 > Reporter: Rajesh Balamohan > Assignee: Rajesh Balamohan > Priority: Minor > Attachments: HIVE-22751.1.patch > > > [https://github.com/apache/hive/blob/master/service/src/java/org/apache/hive/service/server/HiveServer2.java#L620] > [https://github.com/apache/hive/blob/master/service/src/java/org/apache/hive/service/cli/session/SessionManager.java#L597] > > When queries are run in beeline and closed, it causes unwanted delays in > shutting down beeline. Here is the threaddump from server side, which shows > HiveServer2 lock contention. > > It would be good to move synchronization to > "zooKeeperHelper.isDeregisteredWithZooKeeper" > > {noformat} > "main" #1 prio=5 os_prio=0 tid=0x00007f78b0078800 nid=0x2d1c waiting on > condition [0x00007f78b968c000] > java.lang.Thread.State: WAITING (parking) > at sun.misc.Unsafe.park(Native Method) > - parking to wait for <0x00000000ac8d5ff0> (a > java.util.concurrent.FutureTask) > at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175) > at java.util.concurrent.FutureTask.awaitDone(FutureTask.java:429) > at java.util.concurrent.FutureTask.get(FutureTask.java:191) > at > org.apache.hadoop.hive.ql.exec.tez.TezSessionPool.startUnderInitLock(TezSessionPool.java:187) > at > org.apache.hadoop.hive.ql.exec.tez.TezSessionPool.start(TezSessionPool.java:123) > - locked <0x00000000a9c5f2a8> (a java.lang.Object) > at > org.apache.hadoop.hive.ql.exec.tez.TezSessionPoolManager.startPool(TezSessionPoolManager.java:115) > at > org.apache.hive.service.server.HiveServer2.initAndStartTezSessionPoolManager(HiveServer2.java:790) > at > org.apache.hive.service.server.HiveServer2.startOrReconnectTezSessions(HiveServer2.java:763) > at > org.apache.hive.service.server.HiveServer2.start(HiveServer2.java:687) > - locked <0x00000000a99bd568> (a > org.apache.hive.service.server.HiveServer2) > at > org.apache.hive.service.server.HiveServer2.startHiveServer2(HiveServer2.java:1016) > at > org.apache.hive.service.server.HiveServer2.access$1400(HiveServer2.java:137) > at > org.apache.hive.service.server.HiveServer2$StartOptionExecutor.execute(HiveServer2.java:1294) > at > org.apache.hive.service.server.HiveServer2.main(HiveServer2.java:1138) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at org.apache.hadoop.util.RunJar.run(RunJar.java:318) > at org.apache.hadoop.util.RunJar.main(RunJar.java:232) > "HiveServer2-HttpHandler-Pool: Thread-50" #50 prio=5 os_prio=0 > tid=0x00007f78b3e60800 nid=0x2fa7 waiting for monitor entry > [0x00007f7884edf000] > java.lang.Thread.State: BLOCKED (on object monitor) > at > org.apache.hive.service.server.HiveServer2.isDeregisteredWithZooKeeper(HiveServer2.java:600) > - waiting to lock <0x00000000a99bd568> (a > org.apache.hive.service.server.HiveServer2) > at > org.apache.hive.service.cli.session.SessionManager.closeSessionInternal(SessionManager.java:631) > at > org.apache.hive.service.cli.session.SessionManager.closeSession(SessionManager.java:621) > - locked <0x00000000aa1970b0> (a > org.apache.hive.service.cli.session.SessionManager) > at > org.apache.hive.service.cli.CLIService.closeSession(CLIService.java:244) > at > org.apache.hive.service.cli.thrift.ThriftCLIService.CloseSession(ThriftCLIService.java:527) > at > org.apache.hive.service.rpc.thrift.TCLIService$Processor$CloseSession.getResult(TCLIService.java:1517) > at > org.apache.hive.service.rpc.thrift.TCLIService$Processor$CloseSession.getResult(TCLIService.java:1502) > at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39) > at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39) > at org.apache.thrift.server.TServlet.doPost(TServlet.java:83) > at > org.apache.hive.service.cli.thrift.ThriftHttpServlet.doPost(ThriftHttpServlet.java:237) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:707) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) > at > org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:848) > at > org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585) > at > org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:224) > at > org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1180) > at > org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:513) > at > org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) > at > org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1112) > at > org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) > at > org.eclipse.jetty.server.handler.gzip.GzipHandler.handle(GzipHandler.java:493) > at > org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134) > at org.eclipse.jetty.server.Server.handle(Server.java:539) > at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:333) > at > org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251) > at > org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:283) > at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:108) > at > org.eclipse.jetty.io.ssl.SslConnection.onFillable(SslConnection.java:259) > at > org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:283) > at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:108) > at > org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93) > at > org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.executeProduceConsume(ExecuteProduceConsume.java:303) > at > org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceConsume(ExecuteProduceConsume.java:148) > at > org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:136) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748) > {noformat} > > > -- This message was sent by Atlassian Jira (v8.3.4#803005)