[ https://issues.apache.org/jira/browse/HIVE-26075?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
liuguanghua updated HIVE-26075: ------------------------------- Description: (1)When hadoop cluster kerberos is enable (2) HiveServer2 config hive.server2.enable.doAs is set true After a beeline scripte has been executed, hivemetastore connection is created are in ESTABLISHED state and never closed. If we submit a lot of task to hiveserver2 ,this will result in hive metastore thrift thread(default is 1000) full ,thus new task will fail. HiveServer2 use ThreadLocal<Hive> to store multithreading metastore connection,the application should call Hive.closeCurrent() to close connection after task finished. When HiveServer2 impersonate is enable (hive.server2.enable.doAs is set true), the ugi will create proxy user via UserGroupInformation.createProxyUser( owner, UserGroupInformation.getLoginUser()),the old metastore client is never closed. was: (1)When hadoop cluster kerberos is enable (2) HiveServer2 config hive.server2.enable.doAs is set true After a beeline scripte has been executed, hivemetastore connection is created are in ESTABLISHED state and never closed. If we submit a lot of task to hiveserver2 ,this will result in hive metastore thrift thread(default is 1000) full ,thus new task will fail. HiveServer2 use ThreadLocal<Hive> to store multithreading metastore connection,the application should call Hive.closeCurrent() to close connection after task finished. When HiveServer2 impersonate is enable (hive.server2.enable.doAs is set true), > hive metastore connection leaking when hiveserver2 kerberos enable and > hive.server2.enable.doAs set to true > ------------------------------------------------------------------------------------------------------------ > > Key: HIVE-26075 > URL: https://issues.apache.org/jira/browse/HIVE-26075 > Project: Hive > Issue Type: Bug > Components: Hive, HiveServer2 > Reporter: liuguanghua > Assignee: liuguanghua > Priority: Major > Attachments: HIVE-26075.patch > > > (1)When hadoop cluster kerberos is enable > (2) HiveServer2 config hive.server2.enable.doAs is set true > After a beeline scripte has been executed, hivemetastore connection is > created are in ESTABLISHED state and never closed. > If we submit a lot of task to hiveserver2 ,this will result in hive metastore > thrift thread(default is 1000) full ,thus new task will fail. > > HiveServer2 use ThreadLocal<Hive> to store multithreading metastore > connection,the application should call Hive.closeCurrent() to close > connection after task finished. > > When HiveServer2 impersonate is enable (hive.server2.enable.doAs is set > true), the ugi will create proxy user via > UserGroupInformation.createProxyUser( > owner, UserGroupInformation.getLoginUser()),the old metastore client is never > closed. > > > -- This message was sent by Atlassian Jira (v8.20.1#820001)