bulk write hbase 时遇到下面的错误:

19/03/20 02:16:02 ERROR LoadIncrementalHFiles: IOException during splitting
java.util.concurrent.ExecutionException: java.io.IOException: The endkey of one region for table ap:users_v2 is not equal to the startkey of the next region in hbase:meta.Please use hbck tool to fix it first.
at java.util.concurrent.FutureTask.report(FutureTask.java:122)
at java.util.concurrent.FutureTask.get(FutureTask.java:192)
at org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles.groupOrSplitPhase(LoadIncrementalHFiles.java:558)
at org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles.doBulkLoad(LoadIncrementalHFiles.java:414)
at com.hotstar.ap.ingest.batch.tool.bulkload.BulkloadHelper$.bulkloadWrite(BulkloadHelper.scala:55)
at com.hotstar.ap.ingest.batch.tool.HBaseWriterHelper$.writeToHBase(HBaseWriterHelper.scala:57)
at com.hotstar.ap.ingest.batch.ingester.v2.VirtualBatchIngester.runOffline(VirtualBatchIngester.scala:20)
at com.hotstar.ap.ingest.batch.ingester.VirtualIngester.run(VirtualIngester.scala:12)
at com.hotstar.ap.ingest.batch.Main$$anonfun$1.apply(Main.scala:52)
at com.hotstar.ap.ingest.batch.Main$$anonfun$1.apply(Main.scala:52)
at scala.collection.immutable.List.foreach(List.scala:381)
at com.hotstar.ap.ingest.batch.Main$.delayedEndpoint$com$hotstar$ap$ingest$batch$Main$1(Main.scala:52)
at com.hotstar.ap.ingest.batch.Main$delayedInit$body.apply(Main.scala:14)
at scala.Function0$class.apply$mcV$sp(Function0.scala:34)
at scala.runtime.AbstractFunction0.apply$mcV$sp(AbstractFunction0.scala:12)
at scala.App$$anonfun$main$1.apply(App.scala:76)
at scala.App$$anonfun$main$1.apply(App.scala:76)
at scala.collection.immutable.List.foreach(List.scala:381)
at scala.collection.generic.TraversableForwarder$class.foreach(TraversableForwarder.scala:35)
at scala.App$class.main(App.scala:76)
at com.hotstar.ap.ingest.batch.Main$.main(Main.scala:14)
at com.hotstar.ap.ingest.batch.Main.main(Main.scala)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.spark.deploy.yarn.ApplicationMaster$$anon$4.run(ApplicationMaster.scala:721)
Caused by: java.io.IOException: The endkey of one region for table ap:users_v2 is not equal to the startkey of the next region in hbase:meta.Please use hbck tool to fix it first.
at org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles.groupOrSplit(LoadIncrementalHFiles.java:682)
at org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles$3.call(LoadIncrementalHFiles.java:548)
at org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles$3.call(LoadIncrementalHFiles.java:545)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)

sudo -u hbase hbase hbck 检查,存在 inconsistence,其中表 ap:users_v2 有错误,但显示为

Table ap:users_v2 is okay.
Number of regions: 201
Deployed on: ip-10-10-240-127.ec2.internal,16020,1552903865915 ip-10-10-240-145.ec2.internal,16020,1552903928202 ip-10-10-240-48.ec2.internal,16020,1552903982881 ip-10-10-241-65.ec2.internal,16020,1552904038213 ip-10-10-243-103.ec2.internal,16020,1552904093359 ip-10-10-243-116.ec2.internal,16020,1552904166150

sudo -u hbase hbase hbck -repair 修复,解决了 inconsistence,结果显示为

Table ap:users_v2 is okay.
Number of regions: 202
Deployed on: ip-10-10-240-127.ec2.internal,16020,1552903865915 ip-10-10-240-145.ec2.internal,16020,1552903928202 ip-10-10-240-48.ec2.internal,16020,1552903982881 ip-10-10-241-65.ec2.internal,16020,1552904038213 ip-10-10-243-103.ec2.internal,16020,1552904093359 ip-10-10-243-116.ec2.internal,16020,1552904166150

  

  

hbase meta中分区信息错误的记录的更多相关文章

  1. hbase meta表的结构

    下面看下hbase:meta 表的结构,hbase:meta表中,保存了每个表的region地址,还有一些其他信息,例如region的名字,HRegionInfo,服务器的信息.hbase:meta表 ...

  2. SpringBoot+SpringSecurity+Thymeleaf认证失败返回错误信息踩坑记录

    Spring boot +Spring Security + Thymeleaf认证失败返回错误信息踩坑记录 步入8102年,现在企业开发追求快速,Springboot以多种优秀特性引领潮流,在众多使 ...

  3. 项目一:第十四天 1.在realm中动态授权 2.Shiro整合ehcache 缓存realm中授权信息 3.动态展示菜单数据 4.Quartz定时任务调度框架—Spring整合javamail发送邮件 5.基于poi实现分区导出

    1 Shiro整合ehCache缓存授权信息 当需要进行权限校验时候:四种方式url拦截.注解.页面标签.代码级别,当需要验证权限会调用realm中的授权方法   Shiro框架内部整合好缓存管理器, ...

  4. 收集计算机分区信息,去除列中的重复值(Excel)(空行)

    收集计算机分区信息 $servers = gc D:\serverlist.txt $result = $results = $null $results = @() foreach ($server ...

  5. asp.net Web项目中使用Log4Net进行错误日志记录

      使用log4net可以很方便地为应用添加日志功能.应用Log4net,开发者可以很精确地控制日志信息的输出,减少了多余信息,提高了日志记录性能.同时,通过外部配置文件,用户可以不用重新编译程序就能 ...

  6. HBase之五:hbase的region分区

    一.Region 概念 Region是表获取和分布的基本元素,由每个列族的一个Store组成.对象层级图如下: Table (HBase table) Region (Regions for the ...

  7. 【转帖】HBase之五:hbase的region分区

    HBase之五:hbase的region分区 https://www.cnblogs.com/duanxz/p/3154487.html 一.Region 概念 Region是表获取和分布的基本元素, ...

  8. 【转】hbase meta表修复

    [From]https://www.iteye.com/blog/blackproof-2052898 meta表修复一 查看hbasemeta情况 hbase hbck .重新修复hbase met ...

  9. Hbase meta 表异常修复

    Hbase meta表异常修复 标签(空格分隔): Hbase 一,Hbase meta元数据表 1.1 背景 线上Hbase 因为在hbase shell中清空 truncate 'table'一张 ...

随机推荐

  1. 让 typora和word一样好用

    让 typora和word一样好用  :https://github.com/itcastWsy/typora_copy_images typora是一款支持实时预览的markdown编辑器,作者在使 ...

  2. 用数组实现 最简 hash线性探测

    package arr; import java.util.Random; /** 模拟线性寻址式hash函数 模拟将1000大小包含50个数字的数组,存入大小为100的数组内(为了方便判断,我们将0 ...

  3. Move-to-front(MTF) and Run-lenght encoding(RLE) algorithms

    mtf算法(关于该算法:https://www2.cs.duke.edu/csed/algoprobs/beta/bw1.html): #include <stdio.h> #includ ...

  4. chrome 2行换行省略号 ... text-ellipse

    display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; 谷歌内部项目 ...

  5. excel截取第一个空格前的字符

    excel 替换 空格字符后面的所有字符 =TRIM(REPLACE(A1,FIND(" ",A1),999,)) =TRIM(REPLACE(A1,1,FIND(" & ...

  6. 「CF891C」Envy

    传送门 Luogu 解题思路 考虑最小生成树的几个性质: 所有最小生成树中边权相等的边的条数相等 在任意一颗最小生成树中,边权相等的边所联通的点集一定 那么我们考虑把边权相等的边单独拿出来考虑. 每次 ...

  7. Python中令人迷惑的4个引用

    第一个:执行时机的差异 1. array = [1, 8, 15] g = (x for x in array if array.count(x) > 0) array = [2, 8, 22] ...

  8. Ubuntu 16.04 安装ROS sudo rosdep init报错问题

    解决博文:https://blog.csdn.net/weixin_37835458/article/details/79878785 输入sudo rosdep init报错如下: Tracebac ...

  9. C语言-(void*)类型指针

    (void*)类型指针:ANSI新增的:即定义了一个指针,但不指定指向任何类型(即指向抽象的数据类型). 1 通过强制类型转换可将其值赋给另一指针变量 2.1用于动态存储函数的返回型指针 void m ...

  10. 利用ProxySQL实现MySQL的读写分离

    本文简单介绍ProxySQL的安装及如果实现后端MySQL主从结构的读写分离. 一.ProxySQL安装 Proxy官方地址:https://proxysql.com/ proxysql-2.0.8- ...