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

Brandon Li commented on HDFS-5443:
----------------------------------

{quote}...block wa allocated only in Namenode but pipeline not established to 
DNs Yet, so, physical block is not created in Datanodes.{quote} 
This happens too even when snapshot is not involved. But without capturing the 
underconstruction file in snapshot, this problem is hard to notice.  

{quote}Option 1) Why can't we save underconstuction boolan flag for all INode 
as true or false.{quote} 
This can increase memory usage. Underconstructed files are expected to be a 
very small portion in the namespace.

{quote}Option 2) May be we have to deal snapshotted underconstruction files 
with some special care here.{quote} 
When the snapshot is taken, the block allocated but size is zero (no matter 
it's because pipeline-not-created or sized-not-reported-yet). In this case, the 
zero sized block may not need to be recorded in the snapshot at all.

> 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