14/05/15 16:38:37 WARN util.HBaseFsck: reached end of problem group: 860010-2368010000_20140417_14_exit_00000000390
ERROR: Found inconsistency in table day_hotstatic
解决方法:
hbase hbck -fixHdfsOverlaps day_hotstatic
参考下文:
Region Overlap Repairs
hbck -details
run so that you isolate repairs attempts only upon problems the checks identify. Because this is riskier, there are safeguard that should be used to limit the scope of the repairs. WARNING: This is a relatively new and have only been tested on online but idle HBase instances (no reads/writes). Use at your own risk in an active production environment! The options for repairing table integrity violations include:-fixHdfsOrphans
option for “adopting” a region directory that is missing a region metadata file (the .regioninfo file).-fixHdfsOverlaps
ability for fixing overlapping regions
-maxMerge <n>
maximum number of overlapping regions to merge-sidelineBigOverlaps
if more than maxMerge regions are overlapping, sideline attempt to sideline the regions overlapping with the most other regions.-maxOverlapsToSideline <n>
if sidelining large overlapping regions, sideline at most n regions.
-repair
includes all the region consistency options and only the hole repairing table integrity options.
$ ./bin/hbase hbck -repair TableFoo TableBar
There are a few special cases that hbck can handle as well. Sometimes the meta table’s only region is inconsistently assigned or deployed. In this case there is a special
-fixMetaOnly
option that can try to fix meta assignments.$ ./bin/hbase hbck -fixMetaOnly -fixAssignments
HBase’s data on the file system requires a version file in order to start. If this flie is missing, you can use the
-fixVersionFile
option to fabricating a new HBase version file. This assumes that the version of hbck you are running is the appropriate version for the HBase cluster.The most drastic corruption scenario is the case where the ROOT or META is corrupted and HBase will not start. In this case you can use the OfflineMetaRepair tool create new ROOT and META regions and tables. This tool assumes that HBase is offline. It then marches through the existing HBase home directory, loads as much information from region metadata files (.regioninfo files) as possible from the file system. If the region metadata has proper table integrity, it sidelines the original root and meta table directories, and builds new ones with pointers to the region directories and their data.
$ ./bin/hbase org.apache.hadoop.hbase.util.hbck.OfflineMetaRepairNOTE: This tool is not as clever as uberhbck but can be used to bootstrap repairs that uberhbck can complete. If the tool succeeds you should be able to start hbase and run online repairs if necessary.
Once a region is split, the offline parent will be cleaned up automatically. Sometimes, daughter regions are split again before their parents are cleaned up. HBase can clean up parents in the right order. However, there could be some lingering offline split parents sometimes. They are in META, in HDFS, and not deployed. But HBase can't clean them up. In this case, you can use the -fixSplitParents
option to reset them in META to be online and not split. Therefore, hbck can merge them with other regions if fixing overlapping regions option is used.
This option should not normally be used, and it is not in -fixAll
.