[jira] [Updated] (HDFS-7268) Can't append with SYNC_BLOCK

2017-01-06 Thread Junping Du (JIRA)

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

Junping Du updated HDFS-7268:
-
Target Version/s:   (was: 2.8.0)

> Can't append with SYNC_BLOCK
> 
>
> Key: HDFS-7268
> URL: https://issues.apache.org/jira/browse/HDFS-7268
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: hdfs-client
>Affects Versions: 2.4.1
>Reporter: Bogdan Raducanu
>
> It seems to me that currently it's not possible to start appending to a file 
> with CreateFlag.SYNC_BLOCK behavior (i.e. hsync after each block). So, I 
> think, the only way to guarantee durability when appending is if the user 
> calls hsync at the end of each block.
> FileSystem.append doesn't accept a CreateFlag argument.
> FileSystem.create, on the other hand, ignores CreateFlag.APPEND afaics. I 
> think the plan in HDFS-744 was to use this method if durability is needed.
> It seems it might work through FileContext but in the end DFSOutputStream 
> never sets shouldSyncBlock when appending anyway.
> Or am I missing something?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

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



[jira] [Updated] (HDFS-7268) Can't append with SYNC_BLOCK

2014-10-21 Thread Bogdan Raducanu (JIRA)

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

Bogdan Raducanu updated HDFS-7268:
--
Description: 
It seems to me that currently it's not possible to start appending to a file 
with CreateFlag.SYNC_BLOCK behavior (i.e. hsync after each block). So, I think, 
the only way to guarantee durability when appending is if the user calls hsync 
at the end of each block.

FileSystem.append doesn't accept a CreateFlag argument.
FileSystem.create, on the other hand, ignores CreateFlag.APPEND afaics. I think 
the plan in HDFS-744 was to use this method if durability is needed.

It seems it might work through FileContext but in the end DFSOutputStream never 
sets shouldSyncBlock when appending anyway.
Or am I missing something?

  was:
It seems to me that currently it's not possible to start appending to a file 
with CreateFlag.SYNC_BLOCK behavior (i.e. hsync after each block). This means 
proper fsync is not possible when appending (unless doing hsync after every 
write, I guess).
FileSystem.append doesn't accept a CreateFlag argument (probably shouldn't 
anyway).
FileSystem.create ignores CreateFlag.APPEND
It seems it might work through FileContext but in the end DFSOutputStream can't 
be passed a CreateFlag for appending anyway.
Am I missing something?
I will think of a way to fix it. An immediate thought is to add a 
setSyncBlock() method to DFSOutputStream and remove CreateFlag.SYNC_BLOCK.


 Can't append with SYNC_BLOCK
 

 Key: HDFS-7268
 URL: https://issues.apache.org/jira/browse/HDFS-7268
 Project: Hadoop HDFS
  Issue Type: Bug
  Components: hdfs-client
Affects Versions: 2.4.1
Reporter: Bogdan Raducanu
Assignee: Bogdan Raducanu

 It seems to me that currently it's not possible to start appending to a file 
 with CreateFlag.SYNC_BLOCK behavior (i.e. hsync after each block). So, I 
 think, the only way to guarantee durability when appending is if the user 
 calls hsync at the end of each block.
 FileSystem.append doesn't accept a CreateFlag argument.
 FileSystem.create, on the other hand, ignores CreateFlag.APPEND afaics. I 
 think the plan in HDFS-744 was to use this method if durability is needed.
 It seems it might work through FileContext but in the end DFSOutputStream 
 never sets shouldSyncBlock when appending anyway.
 Or am I missing something?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)