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

TestTableLockManager.testTableReadLock fails

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 0.95.2
    • test
    • None

    Description

      See http://54.241.6.143/job/HBase-0.95-Hadoop-2/org.apache.hbase$hbase-server/602/testReport/org.apache.hadoop.hbase.master/TestTableLockManager/testTableReadLock/

      When we run tests, they run w/ assertions enabled so we can stuff like this:

      2013-07-11 08:55:40,781 INFO  [RpcServer.handler=0,port=51447] regionserver.HRegionServer(3619): Splitting testTableReadLock,85203ae86f2de2662ca5b6d614fbe495-4672,1373532936861.f17cc40a225b8de3797757dc3b05dde3.
      2013-07-11 08:55:40,782 ERROR [RpcServer.handler=0,port=51447] ipc.RpcServer(2161): Unexpected throwable object 
      java.lang.AssertionError: getSplitPoint() called on a region that can't split!
      	at org.apache.hadoop.hbase.regionserver.HStore.getSplitPoint(HStore.java:1587)
      	at org.apache.hadoop.hbase.regionserver.RegionSplitPolicy.getSplitPoint(RegionSplitPolicy.java:81)
      	at org.apache.hadoop.hbase.regionserver.HRegion.checkSplit(HRegion.java:5311)
      	at org.apache.hadoop.hbase.regionserver.HRegionServer.splitRegion(HRegionServer.java:3626)
      	at org.apache.hadoop.hbase.protobuf.generated.AdminProtos$AdminService$2.callBlockingMethod(AdminProtos.java:14396)
      	at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2124)
      	at org.apache.hadoop.hbase.ipc.RpcServer$Handler.run(RpcServer.java:1831)
      2013-07-11 08:55:40,816 DEBUG [Split thread] catalog.CatalogTracker(208): Stopping catalog tracker org.apache.hadoop.hbase.catalog.CatalogTracker@25e0df1b
      2013-07-11 08:55:40,833 WARN  [Split thread] master.TestTableLockManager$7(382): Caught exception
      java.io.IOException: java.io.IOException: getSplitPoint() called on a region that can't split!
      	at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2162)
      	at org.apache.hadoop.hbase.ipc.RpcServer$Handler.run(RpcServer.java:1831)
      Caused by: java.lang.AssertionError: getSplitPoint() called on a region that can't split!
      	at org.apache.hadoop.hbase.regionserver.HStore.getSplitPoint(HStore.java:1587)
      	at org.apache.hadoop.hbase.regionserver.RegionSplitPolicy.getSplitPoint(RegionSplitPolicy.java:81)
      	at org.apache.hadoop.hbase.regionserver.HRegion.checkSplit(HRegion.java:5311)
      	at org.apache.hadoop.hbase.regionserver.HRegionServer.splitRegion(HRegionServer.java:3626)
      	at org.apache.hadoop.hbase.protobuf.generated.AdminProtos$AdminService$2.callBlockingMethod(AdminProtos.java:14396)
      	at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2124)
      	... 1 more
      
      	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
      	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
      	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
      	at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
      	at org.apache.hadoop.ipc.RemoteException.instantiateException(RemoteException.java:90)
      	at org.apache.hadoop.ipc.RemoteException.unwrapRemoteException(RemoteException.java:79)
      	at org.apache.hadoop.hbase.protobuf.ProtobufUtil.getRemoteException(ProtobufUtil.java:232)
      	at org.apache.hadoop.hbase.protobuf.ProtobufUtil.split(ProtobufUtil.java:1511)
      	at org.apache.hadoop.hbase.client.HBaseAdmin.split(HBaseAdmin.java:1801)
      	at org.apache.hadoop.hbase.client.HBaseAdmin.split(HBaseAdmin.java:1774)
      	at org.apache.hadoop.hbase.client.HBaseAdmin.split(HBaseAdmin.java:1747)
      	at org.apache.hadoop.hbase.master.TestTableLockManager$7.chore(TestTableLockManager.java:372)
      	at org.apache.hadoop.hbase.Chore.run(Chore.java:80)
      	at java.lang.Thread.run(Thread.java:662)
      Caused by: org.apache.hadoop.hbase.ipc.RemoteWithExtrasException(java.io.IOException): java.io.IOException: getSplitPoint() called on a region that can't split!
      	at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2162)
      	at org.apache.hadoop.hbase.ipc.RpcServer$Handler.run(RpcServer.java:1831)
      Caused by: java.lang.AssertionError: getSplitPoint() called on a region that can't split!
      	at org.apache.hadoop.hbase.regionserver.HStore.getSplitPoint(HStore.java:1587)
      	at org.apache.hadoop.hbase.regionserver.RegionSplitPolicy.getSplitPoint(RegionSplitPolicy.java:81)
      	at org.apache.hadoop.hbase.regionserver.HRegion.checkSplit(HRegion.java:5311)
      	at org.apache.hadoop.hbase.regionserver.HRegionServer.splitRegion(HRegionServer.java:3626)
      	at org.apache.hadoop.hbase.protobuf.generated.AdminProtos$AdminService$2.callBlockingMethod(AdminProtos.java:14396)
      	at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2124)
      	... 1 more
      
      	at org.apache.hadoop.hbase.ipc.RpcClient.call(RpcClient.java:1369)
      	at org.apache.hadoop.hbase.ipc.RpcClient.callBlockingMethod(RpcClient.java:1573)
      	at org.apache.hadoop.hbase.ipc.RpcClient$BlockingRpcChannelImplementation.callBlockingMethod(RpcClient.java:1630)
      	at org.apache.hadoop.hbase.protobuf.generated.AdminProtos$AdminService$BlockingStub.splitRegion(AdminProtos.java:15141)
      	at org.apache.hadoop.hbase.protobuf.ProtobufUtil.split(ProtobufUtil.java:1509)
      	... 6 more
      2013-07-11 08:55:40,834 FATAL [Split thread] hbase.Chore(91): Split threaderror
      java.lang.AssertionError: java.io.IOException: getSplitPoint() called on a region that can't split!
      	at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2162)
      	at org.apache.hadoop.hbase.ipc.RpcServer$Handler.run(RpcServer.java:1831)
      Caused by: java.lang.AssertionError: getSplitPoint() called on a region that can't split!
      	at org.apache.hadoop.hbase.regionserver.HStore.getSplitPoint(HStore.java:1587)
      	at org.apache.hadoop.hbase.regionserver.RegionSplitPolicy.getSplitPoint(RegionSplitPolicy.java:81)
      	at org.apache.hadoop.hbase.regionserver.HRegion.checkSplit(HRegion.java:5311)
      	at org.apache.hadoop.hbase.regionserver.HRegionServer.splitRegion(HRegionServer.java:3626)
      	at org.apache.hadoop.hbase.protobuf.generated.AdminProtos$AdminService$2.callBlockingMethod(AdminProtos.java:14396)
      	at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2124)
      	... 1 more
      
      	at org.junit.Assert.fail(Assert.java:88)
      	at org.apache.hadoop.hbase.master.TestTableLockManager$7.chore(TestTableLockManager.java:383)
      	at org.apache.hadoop.hbase.Chore.run(Chore.java:80)
      
      

      The assertion here is for a condition that is not a problem; the region is currently not splittable because it has references.

      Let me remove the assertion; it is causing the test splitter thread to exit but the test depends on it making progress ... so we are timing out.

      Attachments

        1. 8931.txt
          1 kB
          Michael Stack

        Activity

          People

            stack Michael Stack
            stack Michael Stack
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: