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

Walter Su commented on HDFS-10301:
----------------------------------

bq. BR ids are monotonically increasing.
The id values are random intially, if it starts with a large value it could 
overflow after a long run? If DN restarts, the value randomized again. We 
should be careful in case NN rejects all following BRs.
If BR is splitted into multipe RPCs, there's no interleaving natually because 
DN get the acked before it sends next RPC. Interleaving only exists if BR is 
not splitted. I agree bug need to be fixed from inside, It's just eliminating 
interleaving for good maybe not a bad idea, as it simplifies the problem, and 
is also a simple workaround for this jira.

> BlockReport retransmissions may lead to storages falsely being declared 
> zombie if storage report processing happens out of order
> --------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: HDFS-10301
>                 URL: https://issues.apache.org/jira/browse/HDFS-10301
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: namenode
>    Affects Versions: 2.6.1
>            Reporter: Konstantin Shvachko
>            Assignee: Colin Patrick McCabe
>            Priority: Critical
>         Attachments: HDFS-10301.002.patch, HDFS-10301.003.patch, 
> HDFS-10301.01.patch, zombieStorageLogs.rtf
>
>
> When NameNode is busy a DataNode can timeout sending a block report. Then it 
> sends the block report again. Then NameNode while process these two reports 
> at the same time can interleave processing storages from different reports. 
> This screws up the blockReportId field, which makes NameNode think that some 
> storages are zombie. Replicas from zombie storages are immediately removed, 
> causing missing blocks.



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

Reply via email to