[ https://issues.apache.org/jira/browse/HDFS-6948?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Eric Payne updated HDFS-6948: ----------------------------- Attachment: HDFS-6948.201409081817.txt [~kihwal], thank you very much for reviewing this patch. bq. We may not need this change in {{createRbw()}} I have removed the check for older GS from {{createRbw}} and removed the related unit tests for this method. bq. What happens if the thread writing using older gen stamp is still running? We can kill the thread as it is done in {{recoverRbw()}}. I have added the {{stopWriter()}} call in {{createTemporary()}} when GS for block is newer than GS for temporary replica. The failed test case for {{TestPipelinesFailover#testPipelineRecoveryStress}} works for me in my environment. I think it is related to HDFS-6694. > DN rejects blocks if it has older UC block > ------------------------------------------ > > Key: HDFS-6948 > URL: https://issues.apache.org/jira/browse/HDFS-6948 > Project: Hadoop HDFS > Issue Type: Bug > Affects Versions: 2.0.0-alpha, 3.0.0 > Reporter: Daryn Sharp > Assignee: Eric Payne > Attachments: HDFS-6948.201409052147.txt, HDFS-6948.201409081817.txt > > > DNs appear to always reject blocks, even with newer genstamps, if it already > has a UC copy in its tmp dir. > {noformat}ReplicaAlreadyExistsException: Block > XXX already > exists in state TEMPORARY and thus cannot be created{noformat} -- This message was sent by Atlassian JIRA (v6.3.4#6332)