"An exception was thrown by org.apache.hadoop.hbase.io.asyncfs.FanOutOneBlockAsyncDFSOutputHelper"的解決方法


有兩種情況和原因

情況一:

WARN concurrent.DefaultPromise: An exception was thrown by
org.apache.hadoop.hbase.io.asyncfs.FanOutOneBlockAsyncDFSOutputHelper$6.operationComplete()
java.lang.Error: Couldn't properly initialize access to HDFS internals.
Please update your WAL Provider to not make use of the 'asyncfs' provider.

* 其中的6也可能是其它數值

 

原因:

WAL(Write-Ahead-Log)需要指定寫入模式(WALFactory),有defaultProvider、asyncfs、filesystem、multiwal四種選項。

https://hbase.apache.org/devapidocs/org/apache/hadoop/hbase/wal/WALFactory.html

 

解決方法:

在hbase-site.xml文件添加屬性

vim /hbase/conf/hbase-site.xml

添加以下內容:

<property>
  <name>hbase.wal.provider</name>
  <value>filesystem</value> <!--也可以用multiwal-->
</property>

 

 

情況二:

WARN [RS-EventLoopGroup-1-1] concurrent.DefaultPromise: An exception was thrown by
org.apache.hadoop.hbase.io.asyncfs.FanOutOneBlockAsyncDFSOutputHelper$4.operationComplete()
java.lang.IllegalArgumentException: object is not an instance of declaring class

* 其中的1-1也可能是其它數值

 

原因和解決方法:

只啟動成功了Master(HMaster)和部分RegionServer,有1個或多個RegionServer沒啟動成功。

有可能是以下錯誤(解決方法也在里面):

https://www.cnblogs.com/live41/p/15497022.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM