You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-issues@hadoop.apache.org by "Manoj Govindassamy (JIRA)" <ji...@apache.org> on 2017/04/28 18:48:04 UTC

[jira] [Updated] (HDFS-11718) DFSStripedOutputStream hsync/hflush should not throw UnsupportedOperationException

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

Manoj Govindassamy updated HDFS-11718:
--------------------------------------
    Description: 
This is a clone bug of HDFS-11644 to provide a quick fix while a proper fix is being discussed and developed. The quick fix here would be to just turn {{DFSStripedOutputStream#hsync()/hflush()}} as a no-op instead of throwing UnsupportedOperationException. 

  @Override
  public void hflush() {
    throw new UnsupportedOperationException();
  }

  @Override
  public void hsync() {
    throw new UnsupportedOperationException();
  }

For more details please refer to the comments in HDFS-11644.

  was:
FSDataOutputStream#hsync checks if a stream implements Syncable, and if so, calls hsync. Otherwise, it just calls flush. This is used, for instance, by YARN's FileSystemTimelineWriter.

DFSStripedOutputStream extends DFSOutputStream, which implements Syncable. However, DFSStripedOS throws a runtime exception when the Syncable methods are called.

We should refactor the inheritance structure so DFSStripedOS does not implement Syncable.


> DFSStripedOutputStream hsync/hflush should not throw UnsupportedOperationException
> ----------------------------------------------------------------------------------
>
>                 Key: HDFS-11718
>                 URL: https://issues.apache.org/jira/browse/HDFS-11718
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: erasure-coding
>    Affects Versions: 3.0.0-alpha1
>            Reporter: Manoj Govindassamy
>            Assignee: Manoj Govindassamy
>            Priority: Blocker
>              Labels: hdfs-ec-3.0-must-do
>
> This is a clone bug of HDFS-11644 to provide a quick fix while a proper fix is being discussed and developed. The quick fix here would be to just turn {{DFSStripedOutputStream#hsync()/hflush()}} as a no-op instead of throwing UnsupportedOperationException. 
>   @Override
>   public void hflush() {
>     throw new UnsupportedOperationException();
>   }
>   @Override
>   public void hsync() {
>     throw new UnsupportedOperationException();
>   }
> For more details please refer to the comments in HDFS-11644.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

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