connot fetch block locations
基本信息
系统 : CentOS Linux release 7.4.1708 (Core)
产品 : OushuDB
模块 : HDFS
子模块 : -
描述详述
connot fetch block locations: DETAIL: HdfsIoException: Unexpected: when unwrap the rpc remote exception "java.lang.ArrayIndexOutBoundException", java.lang.ArrayIndexOutOfBoundException in/hawq/depends/libhdfs3/src/server/NamenodeImpl.cpp: 77
原因
当hdfs datanode上出现currupt block上报给namenode时, namenode内存中blockmap和corruptReplicas中有几率信息不同步, 这个客户端获取block信息时出现数组越界情况导致获取block location信息失败。 datenode上currupt block后续会自动被清理,不会复现相同问题。 该问题的issue是https://issues.apache.org/jira/browse/HDFS-11445,该问题在高版本hadoop(2.8.2, 2.9.0)中被修复
解决方案
## 方案一 等待即可;因为HDFS有自动修复机制;大约6小时 ## 方案二 hdfs dfsadmin -triggerBlockReport datanode_host:ipc_port ## 方案三 升级HDFS