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

Íñigo Goiri commented on HDFS-12914:
------------------------------------

I would like somebody with a little more experience with this to give a good 
review but for now a couple minor comments:
* {{checkBlockReportLease()}} could check for {{context == null}} at the 
beginning and return true there right away; then the final return would be just 
the {{checkLease()}}.
* When {{NameNodeRpcServer}} catches the {{UnregisteredNodeException}} we 
probably want to log that.
* We could use a lambda for {{runBlockOp()}}.
* User {{assertNotNull()}} instead of {{assertTrue(datanodeCommand != null)}}; 
actually can we check for the actual command?

> Block report leases cause missing blocks until next report
> ----------------------------------------------------------
>
>                 Key: HDFS-12914
>                 URL: https://issues.apache.org/jira/browse/HDFS-12914
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: namenode
>    Affects Versions: 2.8.0, 2.9.2
>            Reporter: Daryn Sharp
>            Assignee: Santosh Marella
>            Priority: Critical
>         Attachments: HDFS-12914-branch-2.001.patch, 
> HDFS-12914-trunk.00.patch, HDFS-12914-trunk.01.patch, HDFS-12914.005.patch, 
> HDFS-12914.006.patch
>
>
> {{BlockReportLeaseManager#checkLease}} will reject FBRs from DNs for 
> conditions such as "unknown datanode", "not in pending set", "lease has 
> expired", wrong lease id, etc.  Lease rejection does not throw an exception.  
> It returns false which bubbles up to  {{NameNodeRpcServer#blockReport}} and 
> interpreted as {{noStaleStorages}}.
> A re-registering node whose FBR is rejected from an invalid lease becomes 
> active with _no blocks_.  A replication storm ensues possibly causing DNs to 
> temporarily go dead (HDFS-12645), leading to more FBR lease rejections on 
> re-registration.  The cluster will have many "missing blocks" until the DNs 
> next FBR is sent and/or forced.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to