[ 
https://issues.apache.org/jira/browse/HDFS-5809?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13880702#comment-13880702
 ] 

ikweesung commented on HDFS-5809:
---------------------------------

My ugly path like this:
{code}
    if ( info != null ) {
      delBlockInfo(info);
    } else if(blockInfoSet.contains(block)){
        delBlockInfo(info);
        info = new BlockScanInfo(block);
    } else {
      // It might already be removed. Thats ok, it will be caught next time.
      info = new BlockScanInfo(block);
    }
{code}

> BlockPoolSliceScanner make datanode to drop into infinite loop
> --------------------------------------------------------------
>
>                 Key: HDFS-5809
>                 URL: https://issues.apache.org/jira/browse/HDFS-5809
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: datanode
>    Affects Versions: 2.0.0-alpha
>         Environment: jdk1.6, centos6.4, 2.0.0-cdh4.5.0
>            Reporter: ikweesung
>            Priority: Critical
>              Labels: blockpoolslicescanner, datanode, infinite-loop
>
> Hello, everyone.
> When hadoop cluster starts, BlockPoolSliceScanner start scanning the blocks 
> in my cluster.
> Then, randomly one datanode drop into infinite loop as the log show, and 
> finally all datanodes drop into infinite loop.
> Every datanode just verify fail by one block. 
> When i check the fail block like this : hadoop fsck / -files -blocks | grep 
> blk_1223474551535936089_4702249, no hdfs file contains the block.
> It seems that in while block of BlockPoolSliceScanner's scan method drop into 
> infinite loop .
> BlockPoolSliceScanner: 650
> while (datanode.shouldRun
> && !datanode.blockScanner.blockScannerThread.isInterrupted()
> && datanode.isBPServiceAlive(blockPoolId)) { ....
> The log finally printed in method verifyBlock(BlockPoolSliceScanner:453).
> Please excuse my poor English.
> -------------------------------------------------------------------------------------------------------------------------------------------------
> LOG: 
> 2014-01-21 18:36:50,582 INFO 
> org.apache.hadoop.hdfs.server.datanode.BlockPoolSliceScanner: Verification 
> failed for 
> BP-1040548460-58.229.158.13-1385606058039:blk_6833233229840997944_4702634 - 
> may be due to race with write
> 2014-01-21 18:36:50,582 INFO 
> org.apache.hadoop.hdfs.server.datanode.BlockPoolSliceScanner: Verification 
> failed for 
> BP-1040548460-58.229.158.13-1385606058039:blk_6833233229840997944_4702634 - 
> may be due to race with write
> 2014-01-21 18:36:50,582 INFO 
> org.apache.hadoop.hdfs.server.datanode.BlockPoolSliceScanner: Verification 
> failed for 
> BP-1040548460-58.229.158.13-1385606058039:blk_6833233229840997944_4702634 - 
> may be due to race with write



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to