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

Jing Zhao commented on HDFS-9535:
---------------------------------

Thanks for the analysis, [~liuml07] and [~iwasakims]. I think [~liuml07]'s 
analysis is correct. In that sense maybe we should consider add the new "adding 
replicas to pending queue" in {{addStoredBlock}}:
{code}
    if(storedBlock.getBlockUCState() == BlockUCState.COMMITTED &&
        hasMinStorage(storedBlock, numLiveReplicas)) {
      completeBlock(storedBlock, false);
    } else if (storedBlock.isComplete() && result == AddBlockResult.ADDED) {
{code}

At this time the client has already committed the block, and the minimum 
replica number is also met. Thus we actually have the same guarantee as in 
{{commitOrCompleteLastBlock}}.

> Fix TestReplication#testNoExtraReplicationWhenBlockReceivedIsLate
> -----------------------------------------------------------------
>
>                 Key: HDFS-9535
>                 URL: https://issues.apache.org/jira/browse/HDFS-9535
>             Project: Hadoop HDFS
>          Issue Type: Bug
>    Affects Versions: 2.8.0
>            Reporter: Jing Zhao
>            Assignee: Mingliang Liu
>            Priority: Minor
>         Attachments: HDFS-9535.000.patch
>
>
> TestReplication#testNoExtraReplicationWhenBlockReceivedIsLate failed in 
> several Jenkins run (e.g., 
> https://builds.apache.org/job/PreCommit-HDFS-Build/13818/testReport/). The 
> failure is on the last {{assertNoReplicationWasPerformed}} check.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to