[ https://issues.apache.org/jira/browse/HDFS-10770?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Junping Du updated HDFS-10770: ------------------------------ Target Version/s: (was: 2.8.0) > Namenode shouldn't change storage info if client reports different storage. > (via reportBadBlock) > ------------------------------------------------------------------------------------------------ > > Key: HDFS-10770 > URL: https://issues.apache.org/jira/browse/HDFS-10770 > Project: Hadoop HDFS > Issue Type: Bug > Reporter: Rushabh S Shah > > From HDFS-10348 [comment | > https://issues.apache.org/jira/browse/HDFS-10348?focusedCommentId=15271522&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-15271522]. > This jira is created to discuss whether we should change the storageInfo in > triplets if the client reports bad block with storage which is different than > what the namenode thinks. > Here is the relevant code: > {code:title=DatanodeStorageInfo.java|borderStyle=solid} > public AddBlockResult addBlock(BlockInfo b, Block reportedBlock) { > // First check whether the block belongs to a different storage > // on the same DN. > AddBlockResult result = AddBlockResult.ADDED; > DatanodeStorageInfo otherStorage = > b.findStorageInfo(getDatanodeDescriptor()); > if (otherStorage != null) { > if (otherStorage != this) { > // The block belongs to a different storage. Remove it first. > otherStorage.removeBlock(b); > result = AddBlockResult.REPLACED; > } else { > // The block is already associated with this storage. > return AddBlockResult.ALREADY_EXIST; > } > } > b.addStorage(this, reportedBlock); > blocks.add(b); > return result; > } > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332) --------------------------------------------------------------------- To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org