Exception while getting block list java.lang.ArrayIndexOutOfBoundsException

原创
2017/11/20 10:35
阅读数 580

datanode修改本地存储路径后,数据不一致导致namenode报一下错误:


2017-11-16 17:31:44,759 WARN org.apache.hadoop.hdfs.server.balancer.Balancer: Exception while getting block list
org.apache.hadoop.ipc.RemoteException(java.lang.ArrayIndexOutOfBoundsException): java.lang.ArrayIndexOutOfBoundsException

        at org.apache.hadoop.ipc.Client.call(Client.java:1411)
        at org.apache.hadoop.ipc.Client.call(Client.java:1364)
        at org.apache.hadoop.ipc.ProtobufRpcEngine$Invoker.invoke(ProtobufRpcEngine.java:206)
        at com.sun.proxy.$Proxy12.getBlocks(Unknown Source)
 

    这个应该是数据备份数不一致的原因,通过bin/hadoop fsck /查看很多文件备份数不足3份,然后将全部文件备份数设置为3份后问题解决,设置备份数命令bin/hadoop dfs -setrep -w 3 -R /

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部