[ 
https://issues.apache.org/jira/browse/HDFS-15726?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kihwal Lee reassigned HDFS-15726:
---------------------------------

    Assignee: Ahmed Hussein

> Client should only complete a file if the last block is finalized
> -----------------------------------------------------------------
>
>                 Key: HDFS-15726
>                 URL: https://issues.apache.org/jira/browse/HDFS-15726
>             Project: Hadoop HDFS
>          Issue Type: Bug
>            Reporter: Kihwal Lee
>            Assignee: Ahmed Hussein
>            Priority: Major
>
> We have seen certain versions of DFS client manage to call {{completeFile()}} 
> before the blocks are finalized. This is ensured by the way {{colseImpl()}} 
> is written.  When the logic and sematics around flushing or closing changes, 
> this can easily break, but hard to notice by just looking at the code.
> We propose adding a simple yet explicit logic to prevent any violation of 
> this protocol. {{completeFile()}} won't be called unless it has received an 
> ack for the last packet (the one causes finalization on the datanode side).  
> This will fix any current bug and also likely prevent inadvertently breaking 
> it in the future.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org

Reply via email to