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

Vinay commented on HDFS-5443:
-----------------------------

Hi Uma,
problem of 0-sized blocks is there with normal files also (HDFS-4516), but that 
will not cause in NN safemode because file will be an under construction file 
and 0-sized block will not be counted in safemode threshold.

Here actual problem is not containing the 0-sized blocks, but counting them 
also in safemode threshold as these are loaded as COMPLETE blocks

{quote}If the file is already an INodeFileUnderConstructionWithSnapshot, the 
current code will finally call collectBlocksAndClear and remove the 0-sized 
block.
If the file is just an INodeFileUC (but not INodeUCWithSnapshot), when we 
delete its parent directory or ancestral directory, the current code will do 
nothing and leave the 0-sized block there.{quote}
HDFS-5428 handles above scenarios as well.

[~sathish.gurram] Can you verify the same scenario with the latest patch in 
HDFS-5428


> Namenode can stuck in safemode on restart if it crashes just after addblock 
> logsync and after taking snapshot for such file.
> ----------------------------------------------------------------------------------------------------------------------------
>
>                 Key: HDFS-5443
>                 URL: https://issues.apache.org/jira/browse/HDFS-5443
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: snapshots
>    Affects Versions: 3.0.0, 2.2.0
>            Reporter: Uma Maheswara Rao G
>            Assignee: sathish
>
> This issue is reported by Prakash and Sathish.
> On looking into the issue following things are happening.
> .
> 1) Client added block at NN and just did logsync
>    So, NN has block ID persisted.
> 2)Before returning addblock response to client take a snapshot for root or 
> parent directories for that file
> 3) Delete parent directory for that file
> 4) Now crash the NN with out responding success to client for that addBlock 
> call
> Now on restart of the Namenode, it will stuck in safemode.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to