Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

HBase split command throws NOT splittable error

I tried to force split a region and received the following error.

ERROR: org.apache.hadoop.hbase.DoNotRetryIOException: 3dd9ec2b32c98131b39fbfa8266881f9 NOT splittable                                                                                       
        at org.apache.hadoop.hbase.master.assignment.SplitTableRegionProcedure.checkSplittable(SplitTableRegionProcedure.java:193)                                                          
        at org.apache.hadoop.hbase.master.assignment.SplitTableRegionProcedure.<init>(SplitTableRegionProcedure.java:115)                                                                   
        at org.apache.hadoop.hbase.master.assignment.AssignmentManager.createSplitProcedure(AssignmentManager.java:750)                                                                     
        at org.apache.hadoop.hbase.master.HMaster$3.run(HMaster.java:1859)                                                                                                                  
        at org.apache.hadoop.hbase.master.procedure.MasterProcedureUtil.submitProcedure(MasterProcedureUtil.java:134)                                                                       
        at org.apache.hadoop.hbase.master.HMaster.splitRegion(HMaster.java:1851)                                                                                                            
        at org.apache.hadoop.hbase.master.MasterRpcServices.splitRegion(MasterRpcServices.java:808)                                                                                         
        at org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos$MasterService$2.callBlockingMethod(MasterProtos.java)                                                             
        at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:413)                                                                                                                   
        at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:130)                                                                                                                  
        at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:324)                                                                                                        
        at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:304)

Anyone has insight about this error?

I am using Cloudera 6.1.1 and HBase 2.1.0.

like image 944
Naisarg Patel Avatar asked Jul 29 '26 04:07

Naisarg Patel


1 Answers

This is error returned when you trying to split:

  • region of meta table
  • region which in CLOSED/CLOSING state
  • region has references to other region(region which is result of recent split of other region)

I think, you faced last case.
When HBase split region it creates 2 new regions(children) and links it to region currently splitting(parent). Creating children regions more or less 'instant' operation which take a little time. This is due to files which contains data of parent region(store files) not touched during split: HBase delays real split of data files until compaction. Before compaction, each child region contain only special reference to parent region data. Until this reference exists, region considered as 'not splittable'.

like image 178
Lagrang Avatar answered Jul 31 '26 19:07

Lagrang



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!