tangshangwen created HDFS-9717:
----------------------------------
Summary: NameNode can not update the status of bad block
Key: HDFS-9717
URL: https://issues.apache.org/jira/browse/HDFS-9717
Project: Hadoop HDFS
Issue Type: Bug
Affects Versions: 2.2.0
Reporter: tangshangwen
Assignee: tangshangwen
In our cluster,some users set the number of replicas of file to 1, then back to
2,the file cannot be read,but the NameNode think it is healthy
{noformat}
/user/username/dt=2015-11-30/dp=16/part-r-00063.lzo 1513716944 bytes, 12
block(s): Under replicated BP-1422437282658:blk_1897961957_824575827. Target
Replicas is 2 but found 1 replica(s).
Replica placement policy is violated for
BP-1422437282658:blk_1897961957_824575827. Block should be additionally
replicated on 1 more rack
(s).
0. BP-1337805335-xxx.xxx.xxx.xxx-1422437282658:blk_1897961824_824575694
len=134217728 repl=2 [host1:50010, host2:50010]
1. BP-1337805335-xxx.xxx.xxx.xxx-1422437282658:blk_1897961957_824575827
len=134217728 repl=1 [host3:50010]
2. BP-1337805335-xxx.xxx.xxx.xxx-1422437282658:blk_1897962047_824575917
len=134217728 repl=2 [host4:50010, host1:50010]
......
Status: HEALTHY
Total size: 1513716944 B
Total dirs: 0
Total files: 1
Total symlinks: 0
Total blocks (validated): 12 (avg. block size 126143078 B)
Minimally replicated blocks: 12 (100.0 %)
Over-replicated blocks: 0 (0.0 %)
Under-replicated blocks: 1 (8.333333 %)
Mis-replicated blocks: 1 (8.333333 %)
Default replication factor: 3
Average block replication: 1.9166666
Corrupt blocks: 0
Missing replicas: 1 (4.1666665 %)
Number of data-nodes: xxxx
Number of racks: xxx
FSCK ended at Thu Jan 28 10:27:49 CST 2016 in 0 milliseconds
{noformat}
But the replica on the datanode has been damaged, can't read,this is datanode
log
{noformat}
2016-01-23 06:34:42,737 WARN
org.apache.hadoop.hdfs.server.datanode.BlockPoolSliceScanner: First
Verification failed for
BP-1337805335-xxx.xxx.xxx.xxx-1422437282658:blk_1897961957_824575827
java.io.IOException: Input/output error
at java.io.FileInputStream.readBytes(Native Method)
at java.io.FileInputStream.read(FileInputStream.java:272)
at org.apache.hadoop.io.IOUtils.readFully(IOUtils.java:192)
at
org.apache.hadoop.hdfs.server.datanode.BlockSender.sendPacket(BlockSender.java:529)
at
org.apache.hadoop.hdfs.server.datanode.BlockSender.sendBlock(BlockSender.java:710)
at
org.apache.hadoop.hdfs.server.datanode.BlockPoolSliceScanner.verifyBlock(BlockPoolSliceScanner.java:427)
at
org.apache.hadoop.hdfs.server.datanode.BlockPoolSliceScanner.verifyFirstBlock(BlockPoolSliceScanner.java:506)
at
org.apache.hadoop.hdfs.server.datanode.BlockPoolSliceScanner.scan(BlockPoolSliceScanner.java:667)
at
org.apache.hadoop.hdfs.server.datanode.BlockPoolSliceScanner.scanBlockPoolSlice(BlockPoolSliceScanner.java:633)
at
org.apache.hadoop.hdfs.server.datanode.DataBlockScanner.run(DataBlockScanner.java:101)
at java.lang.Thread.run(Thread.java:745)
------------------------------
2016-01-28 10:28:37,874 WARN org.apache.hadoop.hdfs.server.datanode.DataNode:
DatanodeRegistration(host1,
storageID=DS-1450783279-xxx.xxx.xxx.xxx-50010-1432889625435
, infoPort=50075, ipcPort=50020,
storageInfo=lv=-47;cid=CID-3f36397d-b160-4414-b7e4-f37b72e96d53;nsid=1992344832;c=0):Failed
to transfer BP-1337805335-xxx.xxx.xxx.xxx-142243
7282658:blk_1897961957_824575827 to xxx.xxx.xxx.xxx:50010 got
java.net.SocketException: Original Exception : java.io.IOException:
Input/output error
at sun.nio.ch.FileChannelImpl.transferTo0(Native Method)
at sun.nio.ch.FileChannelImpl.transferToDirectly(FileChannelImpl.java:433)
at sun.nio.ch.FileChannelImpl.transferTo(FileChannelImpl.java:565)
at
org.apache.hadoop.net.SocketOutputStream.transferToFully(SocketOutputStream.java:223)
at
org.apache.hadoop.hdfs.server.datanode.BlockSender.sendPacket(BlockSender.java:546)
at
org.apache.hadoop.hdfs.server.datanode.BlockSender.sendBlock(BlockSender.java:710)
at
org.apache.hadoop.hdfs.server.datanode.DataNode$DataTransfer.run(DataNode.java:1520)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.io.IOException: Input/output error
{noformat}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)