编写hbase协处理器observer遇到的问题

12 篇文章 0 订阅
10 篇文章 0 订阅

一、第一个异常信息,配置文件错误

java.io.IOException: Aborting flush because server is aborted...

        at org.apache.hadoop.hbase.regionserver.HRegion.internalPrepareFlushCache(HRegion.java:2269)
        at org.apache.hadoop.hbase.regionserver.HRegion.internalFlushcache(HRegion.java:2254)
        at org.apache.hadoop.hbase.regionserver.HRegion.replayRecoveredEditsIfAny(HRegion.java:4171)
        at org.apache.hadoop.hbase.regionserver.HRegion.initializeRegionStores(HRegion.java:1014)
        at org.apache.hadoop.hbase.regionserver.HRegion.initializeRegionInternals(HRegion.java:884)
        at org.apache.hadoop.hbase.regionserver.HRegion.initialize(HRegion.java:852)
        at org.apache.hadoop.hbase.regionserver.HRegion.openHRegion(HRegion.java:6617)
        at org.apache.hadoop.hbase.regionserver.HRegion.openHRegion(HRegion.java:6578)
        at org.apache.hadoop.hbase.regionserver.HRegion.openHRegion(HRegion.java:6549)
        at org.apache.hadoop.hbase.regionserver.HRegion.openHRegion(HRegion.java:6505)
        at org.apache.hadoop.hbase.regionserver.HRegion.openHRegion(HRegion.java:6456)
        at org.apache.hadoop.hbase.regionserver.handler.OpenRegionHandler.openRegion(OpenRegionHandler.java:362)
        at org.apache.hadoop.hbase.regionserver.handler.OpenRegionHandler.process(OpenRegionHandler.java:129)
        at org.apache.hadoop.hbase.executor.EventHandler.run(EventHandler.java:129)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

        at java.lang.Thread.run(Thread.java:748)

解决办法:配置hbase-site.xml文件,添加配置

   hbase.coprocessor.abortοnerrοr=false

二、第二个异常

2018-04-13 16:23:14,452 ERROR [RS_OPEN_REGION-slave01:16020-8] regionserver.RegionCoprocessorHost: Failed to load coprocessor com.jadun.ObserverHbaseToEs.DataSyncObserver
java.lang.SecurityException: Invalid signature file digest for Manifest main attributes
        at sun.security.util.SignatureFileVerifier.processImpl(SignatureFileVerifier.java:314)
        at sun.security.util.SignatureFileVerifier.process(SignatureFileVerifier.java:268)
        at java.util.jar.JarVerifier.processEntry(JarVerifier.java:316)
        at java.util.jar.JarVerifier.update(JarVerifier.java:228)
        at java.util.jar.JarFile.initializeVerifier(JarFile.java:383)
        at java.util.jar.JarFile.getInputStream(JarFile.java:450)
        at sun.misc.URLClassPath$JarLoader$2.getInputStream(URLClassPath.java:977)
        at sun.misc.Resource.cachedInputStream(Resource.java:77)
        at sun.misc.Resource.getByteBuffer(Resource.java:160)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:454)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
        at org.apache.hadoop.hbase.util.CoprocessorClassLoader.loadClass(CoprocessorClassLoader.java:303)
        at org.apache.hadoop.hbase.coprocessor.CoprocessorHost.load(CoprocessorHost.java:197)
        at org.apache.hadoop.hbase.regionserver.RegionCoprocessorHost.loadTableCoprocessors(RegionCoprocessorHost.java:331)
        at org.apache.hadoop.hbase.regionserver.RegionCoprocessorHost.<init>(RegionCoprocessorHost.java:222)
        at org.apache.hadoop.hbase.regionserver.HRegion.<init>(HRegion.java:781)
        at org.apache.hadoop.hbase.regionserver.HRegion.<init>(HRegion.java:689)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
        at org.apache.hadoop.hbase.regionserver.HRegion.newHRegion(HRegion.java:6267)
        at org.apache.hadoop.hbase.regionserver.HRegion.openHRegion(HRegion.java:6577)
        at org.apache.hadoop.hbase.regionserver.HRegion.openHRegion(HRegion.java:6549)
        at org.apache.hadoop.hbase.regionserver.HRegion.openHRegion(HRegion.java:6505)
        at org.apache.hadoop.hbase.regionserver.HRegion.openHRegion(HRegion.java:6456)
        at org.apache.hadoop.hbase.regionserver.handler.OpenRegionHandler.openRegion(OpenRegionHandler.java:362)
        at org.apache.hadoop.hbase.regionserver.handler.OpenRegionHandler.process(OpenRegionHandler.java:129)
        at org.apache.hadoop.hbase.executor.EventHandler.run(EventHandler.java:129)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)

解决方法: <!-- Maven打包时将META-inf中.SF/.DSA/.RSA为后缀的文件过滤,以防在服务器运行时报错 -->
<plugin>
<configuration>
   <filters>
       <filter>
           <artifact>*:*</artifact>
           <excludes>
               <exclude>META-INF/*.SF</exclude>
               <exclude>META-INF/*.DSA</exclude>
               <exclude>META-INF/*.RSA</exclude>
           </excludes>
       </filter>
   </filters>
</configuration>
</plugin> 
或者在jar包中删除这几个文件
三、防止检测jar包,报错,自动断开regionserver服务,需要关闭 hbase.table.sanity.checks

    设置hbase.table.sanity.checks=false

开发过程中遇到的问题挺多的,记录一下以防下次再次采坑

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值