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

Yi Liu commented on HDFS-6871:
------------------------------

[~daryn], thanks for your comment. If I understand your comments (I have the 
same understanding for your comments as Colin), the latest patch 003 should 
address them. Blocks will be removed only after edit log is flushed.

But anyway, using one single editlog record would be more clear and cleaner. 
Let's use one single editlog record for creating file + overwrite, please help 
to review HDFS-6886 when it's ready, thanks all.

> Improve NameNode performance when creating file  
> -------------------------------------------------
>
>                 Key: HDFS-6871
>                 URL: https://issues.apache.org/jira/browse/HDFS-6871
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>          Components: namenode, performance
>            Reporter: Yi Liu
>            Assignee: Yi Liu
>            Priority: Critical
>             Fix For: 2.6.0
>
>         Attachments: HDFS-6871.001.patch, HDFS-6871.002.patch, 
> HDFS-6871.003.patch
>
>
> Creating file with overwrite flag will cause NN fall into flush edit logs and 
> block other requests if the file exists.
> When we create a file with overwrite flag (default is true) in HDFS, NN will 
> remove original file if it exists. In FSNamesystem#startFileInternal, NN 
> already holds the write lock, it calls {{deleteInt}} if the file exists, 
> there is logSync in {{deleteInt}}. So in this case, logSync is under write 
> lock, it will heavily affect the NN performance. 
> We should ignore the force logSync in {{deleteInt}} in this case.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to