HConnectionImplementation closed-but-not-deleted, need a way to find the state
of connection
--------------------------------------------------------------------------------------------
Key: HBASE-4893
URL: https://issues.apache.org/jira/browse/HBASE-4893
Project: HBase
Issue Type: Bug
Components: client
Affects Versions: 0.90.4, 0.90.3, 0.90.2, 0.90.1
Environment: Linux 2.6, HBase-0.90.1
Reporter: Mubarak Seyed
Fix For: 0.90.5
In abort() of HConnectionManager$HConnectionImplementation, instance of
HConnectionImplementation is marked as this.closed=true.
There is no way for client application to check the hbase client connection
whether it is still opened/good (this.closed=false) or not. We need a method to
validate the state of a connection like isClosed().
{code}
public boolean isClosed(){
return this.closed;
}
{code}
Once the connection is closed and it is not deleted. Client application still
gets a connection from HConnectionManager.getConnection(Configuration) and
tries to make a RPC call to RS, since connection is already closed,
HConnectionImplementation.getRegionServerWithRetries throws
RetriesExhaustedException with error message
{code}
Caused by: org.apache.hadoop.hbase.client.RetriesExhaustedException: Trying to
contact region server null for region , row 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxx',
but failed after 10 attempts.
Exceptions:
java.io.IOException:
org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation@7eab48a7
closed
java.io.IOException:
org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation@7eab48a7
closed
java.io.IOException:
org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation@7eab48a7
closed
java.io.IOException:
org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation@7eab48a7
closed
java.io.IOException:
org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation@7eab48a7
closed
java.io.IOException:
org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation@7eab48a7
closed
java.io.IOException:
org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation@7eab48a7
closed
java.io.IOException:
org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation@7eab48a7
closed
java.io.IOException:
org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation@7eab48a7
closed
java.io.IOException:
org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation@7eab48a7
closed
at
org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.getRegionServerWithRetries(HConnectionManager.java:1008)
at org.apache.hadoop.hbase.client.HTable.get(HTable.java:546)
{code}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira