ZanderXu created HDFS-16754:
-------------------------------

             Summary: UnderConstruct file with missingBlock should be able to 
recover lease
                 Key: HDFS-16754
                 URL: https://issues.apache.org/jira/browse/HDFS-16754
             Project: Hadoop HDFS
          Issue Type: Bug
            Reporter: ZanderXu
            Assignee: ZanderXu


During looking into the logic of RecoverLease, I guess there is a bug:
{code:java}
int nrCompleteBlocks;
BlockInfo curBlock = null;
for(nrCompleteBlocks = 0; nrCompleteBlocks < nrBlocks; nrCompleteBlocks++) {
  curBlock = blocks[nrCompleteBlocks];
  if(!curBlock.isComplete())
    break;
  // Why?
  assert blockManager.hasMinStorage(curBlock) :
          "A COMPLETE block is not minimally replicated in " + src;
} {code}
RecoverLease just try to align all replicas of the last block of one 
UnderConstruct file.

So if the UC file with some completed blocks, which may missed all replicas, 
should be able to recoverLease.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-dev-unsubscr...@hadoop.apache.org
For additional commands, e-mail: hdfs-dev-h...@hadoop.apache.org

Reply via email to