Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-12162

HBaseAdmin#getTableDescriptor() may fail in case master fails over

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Duplicate
    • None
    • None
    • None
    • None

    Description

      This was discovered by Chakradhar Medavarapu during HA testing.

      Here is relevant exception:

      2014-09-30 04:07:56,734|beaver.machine|INFO|5728|5604|MainThread|14/09/30 04:07:56 ERROR util.AbstractHBaseTool: Error running command-line tool
      2014-09-30 04:07:56,734|beaver.machine|INFO|5728|5604|MainThread|java.io.IOException: Call to onprem-ha34/10.215.18.85:60000 failed on local exception: java.io.IOException: Call id=1, waitTime=8703
      2014-09-30 04:07:56,734|beaver.machine|INFO|5728|5604|MainThread|at org.apache.hadoop.hbase.ipc.RpcClient.wrapException(RpcClient.java:1571)
      2014-09-30 04:07:56,734|beaver.machine|INFO|5728|5604|MainThread|at org.apache.hadoop.hbase.ipc.RpcClient.call(RpcClient.java:1541)
      2014-09-30 04:07:56,736|beaver.machine|INFO|5728|5604|MainThread|at org.apache.hadoop.hbase.ipc.RpcClient.callBlockingMethod(RpcClient.java:1723)
      2014-09-30 04:07:56,736|beaver.machine|INFO|5728|5604|MainThread|at org.apache.hadoop.hbase.ipc.RpcClient$BlockingRpcChannelImplementation.callBlockingMethod(RpcClient.java:1776)
      2014-09-30 04:07:56,736|beaver.machine|INFO|5728|5604|MainThread|at org.apache.hadoop.hbase.protobuf.generated.MasterProtos$MasterService$BlockingStub.getTableDescriptors(MasterProtos.java:42525)
      2014-09-30 04:07:56,736|beaver.machine|INFO|5728|5604|MainThread|at org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation$5.getTableDescriptors(ConnectionManager.java:2121)
      2014-09-30 04:07:56,736|beaver.machine|INFO|5728|5604|MainThread|at org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation.getHTableDescriptor(ConnectionManager.java:2600)
      2014-09-30 04:07:56,736|beaver.machine|INFO|5728|5604|MainThread|at org.apache.hadoop.hbase.client.HBaseAdmin.getTableDescriptor(HBaseAdmin.java:410)
      

      From stack trace, exception came out of connection.getHTableDescriptor().
      This happened during master failover where MasterKeepAliveConnection to the failed master became unusable.

      Attachments

        1. 12162-v1.txt
          2 kB
          Ted Yu

        Issue Links

          Activity

            People

              Unassigned Unassigned
              yuzhihong@gmail.com Ted Yu
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: