----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/14298/#review26414 -----------------------------------------------------------
jdbc/src/java/org/apache/hive/jdbc/HiveStatement.java <https://reviews.apache.org/r/14298/#comment51609> Similar to my other comment (on removing opHandle entry from handleToOperation map in OperationManager), do you see any use of keeping the stmtHandle on an exception if we ensure that the operationHandle on the server is removed from the handleToOperation map in case of an error? service/src/java/org/apache/hive/service/cli/session/HiveSessionImpl.java <https://reviews.apache.org/r/14298/#comment51607> In the current (patch) implementation, when an operation throws an exception, we're making sure that the opHandle gets added to the opHandleSet in HiveSessionImpl for later cleanup by HiveSessionImpl#close. Wouldn't a better to just remove the opHandle entry from handleToOperation map in OperationManager but pass on the error to the client? - Vaibhav Gumashta On Sept. 25, 2013, 9:09 a.m., Kousuke Saruta wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/14298/ > ----------------------------------------------------------- > > (Updated Sept. 25, 2013, 9:09 a.m.) > > > Review request for hive. > > > Bugs: HIVE-5296 > https://issues.apache.org/jira/browse/HIVE-5296 > > > Repository: hive-git > > > Description > ------- > > Hiveserver2 will occur memory leak caused by increasing Hashtable$Entry at > least 2 situation as follows. > > 1. When Exceptions are thrown during executing commmand or query, operation > handle will not release. > 2. Hiveserver2 calls FileSystem#get method and never call FileSystem#close or > FileSystem.closeAll so FileSystem$Cache will continue to increase. > > I've modified HiveSessionImpl and HiveStatement not to lose operation handle. > Operation handle is needed by OperationManager to remove from > handleToOpration. > Also, I've modified HiveSessionImpl to close FileSystem object at the end of > session. > > > Diffs > ----- > > jdbc/src/java/org/apache/hive/jdbc/HiveStatement.java 2912ece > service/src/java/org/apache/hive/service/cli/session/HiveSessionImpl.java > 11c96b2 > > Diff: https://reviews.apache.org/r/14298/diff/ > > > Testing > ------- > > I confirmed only not increasing Hashtable$Entry by jmap. > > > Thanks, > > Kousuke Saruta > >