Hbase ERROR: Requested row out of range for doMiniBatchMutation

大憨熊 提交于 2020-08-11 10:10:59

访问Hbase表时,遇到问题报错:

Failed 2 actions: org.apache.hadoop.hbase.exceptions.FailedSanityCheckException: Requested row out of range for doMiniBatchMutation on HRegion C_VIP,7841550515151G61700013047NT,1554743634303.fa5125151452729737659ef06fc2bbeb., startKey='7841550515151G61700013047NT', getEndKey()='8006490844551PBM13686838900NT', row='8562248218851PBW13843166713NT'

问题原因:

由于在做暴力合并region的情况下,导致region顺序出现问题,最后一个region块的最大key值不是无穷大

例如:
在这里插入图片描述

正常情况下:
在这里插入图片描述

解决:

合并最后一个region和key值为无穷大的region
在这里插入图片描述
merge_region ‘03d6ebdb5811899f32c2ad3ae9c0753b’,‘3a1ccea8df42a95bca3c5bbd6c73d5f6’,true

备注:合并完之后可以暂时解决问题,后续需要把region重新合并一遍,保证不会出现:There is an overlap in the region chain

做完之后可以执行查看region是否还有问题:
su hbase -s /bin/sh -c ‘hbase hbck -fixMeta ‘C_VIP’’
在这里插入图片描述
备注:在进行Region合并时,要注意合并顺序,尽量避免暴力合并


易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!