[ https://issues.apache.org/jira/browse/HBASE-7369?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13542703#comment-13542703 ]
chunhui shen commented on HBASE-7369: ------------------------------------- Once closed is set true, we won't reuse the HConnection again now. Therefore, like HConnectionImplementation#locateRegion,HConnectionImplementation#createMasterWithRetries, will throw exception directly because closed=true. [~bbaugher] what about calling close() instead of {code}if (managed) HConnectionManager.deleteStaleConnection(this);{code} and change a little in close() {code} @Override public void close() { if (managed) { if(abortRequested){ HConnectionManager.deleteStaleConnection(this); } else{ HConnectionManager.deleteConnection(this, stopProxy, false); } } else { close(true); } } {code} By the way, there's another problem. Although a stale connecion is removed, the existed HTable whose hconnection refers to this stale connection couldn't work any more until we restart the client or application handle this case. I think it's better reset the hconnection in HTable if it is already closed. e.g. check whether connection is closed when using connection in HTable > HConnectionManager should remove aborted connections > ---------------------------------------------------- > > Key: HBASE-7369 > URL: https://issues.apache.org/jira/browse/HBASE-7369 > Project: HBase > Issue Type: Improvement > Components: Client > Affects Versions: 0.94.3 > Reporter: Bryan Baugher > Priority: Minor > Attachments: patch2.diff, patch3.diff, patch.diff > > > When an HConnection is abort()'ed (i.e. if numerous services are lost) the > connection becomes unusable. HConnectionManager cache of HConnections > currently does not have any logic around removing aborted connections > automatically. Currently it is up to the consumer to do so using > HConnectionManager.deleteStaleConnection(HConnection). -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira