[ https://issues.apache.org/jira/browse/HDFS-9959?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
yunjiong zhao updated HDFS-9959: -------------------------------- Attachment: HDFS-9959.3.withtest.patch HDFS-9959.3.patch Update patch according to the comments. I use below code to do a test, but I'm not sure whether I should add this test case since I verify it manually on the output, let me know that we can mock logger. So I added two patches, one with test case, one didn't. {code} @Test public void testMissingBlockLog () { BlocksMap.MissingBlockLog.init(); for (Long l = 1l; l < 32L; l++) { BlocksMap.MissingBlockLog.add(new Block(l)); } BlocksMap.MissingBlockLog.log(new DatanodeID("127.0.0.1", "localhost", "uuid-9959", 9959, 9960, 9961, 9962)); } {code} And the output which this test case generated is like below: {quote} $cat org.apache.hadoop.hdfs.server.blockmanagement.TestBlocksMap-output.txt 2016-03-22 11:34:25,758 [main] WARN BlockStateChange (BlocksMap.java:log(73)) - After removed 127.0.0.1:9959, no live nodes contain the following 10 blocks: blk_1_0 blk_2_0 blk_3_0 blk_4_0 blk_5_0 blk_6_0 blk_7_0 blk_8_0 blk_9_0 blk_10_0 2016-03-22 11:34:25,761 [main] WARN BlockStateChange (BlocksMap.java:log(73)) - After removed 127.0.0.1:9959, no live nodes contain the following 10 blocks: blk_11_0 blk_12_0 blk_13_0 blk_14_0 blk_15_0 blk_16_0 blk_17_0 blk_18_0 blk_19_0 blk_20_0 2016-03-22 11:34:25,761 [main] WARN BlockStateChange (BlocksMap.java:log(73)) - After removed 127.0.0.1:9959, no live nodes contain the following 10 blocks: blk_21_0 blk_22_0 blk_23_0 blk_24_0 blk_25_0 blk_26_0 blk_27_0 blk_28_0 blk_29_0 blk_30_0 2016-03-22 11:34:25,761 [main] WARN BlockStateChange (BlocksMap.java:log(81)) - After removed 127.0.0.1:9959, no live nodes contain the following 1 blocks: blk_31_0 {quote} Thanks. > add log when block removed from last live datanode > -------------------------------------------------- > > Key: HDFS-9959 > URL: https://issues.apache.org/jira/browse/HDFS-9959 > Project: Hadoop HDFS > Issue Type: Improvement > Components: namenode > Reporter: yunjiong zhao > Assignee: yunjiong zhao > Priority: Minor > Attachments: HDFS-9959.1.patch, HDFS-9959.2.patch, HDFS-9959.3.patch, > HDFS-9959.3.withtest.patch, HDFS-9959.patch > > > Add logs like "BLOCK* No live nodes contain block blk_1073741825_1001, last > datanode contain it is node: 127.0.0.1:65341" in BlockStateChange should help > to identify which datanode should be fixed first to recover missing blocks. -- This message was sent by Atlassian JIRA (v6.3.4#6332)