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

commands.rb is giving wrong error messages on exceptions

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 0.99.0, 0.94.19, 0.98.2, 0.96.3
    • shell
    • None
    • Reviewed

    Description

      1) Clone into existing table name is printing snapshot name instead of table name.

      hbase(main):004:0> clone_snapshot 'myTableSnapshot-122112','table'
      
      ERROR: Table already exists: myTableSnapshot-122112!
      

      The reason for this is we are printing first argument instead of exception message.

              if cause.kind_of?(org.apache.hadoop.hbase.TableExistsException) then
                raise "Table already exists: #{args.first}!"
              end
      

      2) If we give wrong column family in put or delete. Expectation is to print actual column families in the table but instead throwing the exception.

      hbase(main):002:0> put 't1','r','unkwown_cf','value'
      2014-02-14 15:51:10,037 WARN  [main] util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
      2014-02-14 15:51:10,640 INFO  [main] hdfs.PeerCache: SocketCache disabled.
      
      ERROR: Failed 1 action: org.apache.hadoop.hbase.regionserver.NoSuchColumnFamilyException: Column family unkwown_cf does not exist in region t1,eeeeeeee,1392118273512.c7230b923c58f1af406a6d84930e40c1. in table 't1', {NAME => 'f1', DATA_BLOCK_ENCODING => 'NONE', BLOOMFILTER => 'ROW', REPLICATION_SCOPE => '0', COMPRESSION => 'NONE', VERSIONS => '6', TTL => '2147483647', MIN_VERSIONS => '0', KEEP_DELETED_CELLS => 'false', BLOCKSIZE => '65536', IN_MEMORY => 'false', BLOCKCACHE => 'true'}
              at org.apache.hadoop.hbase.regionserver.HRegionServer.doBatchOp(HRegionServer.java:4206)
              at org.apache.hadoop.hbase.regionserver.HRegionServer.doNonAtomicRegionMutation(HRegionServer.java:3441)
              at org.apache.hadoop.hbase.regionserver.HRegionServer.multi(HRegionServer.java:3345)
              at org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:28460)
              at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2008)
              at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:92)
              at org.apache.hadoop.hbase.ipc.SimpleRpcScheduler.consumerLoop(SimpleRpcScheduler.java:160)
              at org.apache.hadoop.hbase.ipc.SimpleRpcScheduler.access$000(SimpleRpcScheduler.java:38)
              at org.apache.hadoop.hbase.ipc.SimpleRpcScheduler$1.run(SimpleRpcScheduler.java:110)
              at java.lang.Thread.run(Thread.java:662)
      : 1 time,
      
      

      The reason for this is server will not throw NoSuchColumnFamilyException directly, instead RetriesExhaustedWithDetailsException will be thrown.

      Attachments

        1. HBASE-10533_v3.patch
          2 kB
          rajeshbabu
        2. HBASE-10533_v2.patch
          2 kB
          rajeshbabu
        3. HBASE-10533_trunk.patch
          2 kB
          rajeshbabu
        4. HBASE-10533_94.patch
          3 kB
          rajeshbabu

        Issue Links

          Activity

            People

              rajesh23 rajeshbabu
              rajesh23 rajeshbabu
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: