[ https://issues.apache.org/jira/browse/HDFS-12263?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16135063#comment-16135063 ]
Steve Loughran commented on HDFS-12263: --------------------------------------- I'm doing this in HADOOP-13327, with some tests. It says # you MUST NOT declare a capability unless you really do implement the hsync/hflush operations # you SHOULD NOT implement Syncable unless you implement the operations # If you implement Syncable but not the operations (e.g. through subclassing). you MUST make them no-ops (don't throw any exception), and MUST override {{hasCapability()}} to declare that capability is not supported. # If you implement Syncable, you MUST implement {{hasCapability()}}. (patch adds that to Azure and ADL where appropriate) Callers SHOULD use hasCapability() to check for behavior, and assume if a stream says it does hsync/hflush, it is being honest. If it does not declare that it does so, assume that it doesn't do them. > Revise StreamCapacities doc to describe the API usage and the requirements > for customized OutputStream implemetation > -------------------------------------------------------------------------------------------------------------------- > > Key: HDFS-12263 > URL: https://issues.apache.org/jira/browse/HDFS-12263 > Project: Hadoop HDFS > Issue Type: Improvement > Affects Versions: 3.0.0-alpha4 > Reporter: Lei (Eddy) Xu > Assignee: Lei (Eddy) Xu > > [~busbey] raised the concerns to call out what is the expected way to call > {{StreamCapabilities}} from the client side. And this doc should also > describe the rules for any {{FSOutputStream}} implementation to follow. -- This message was sent by Atlassian JIRA (v6.4.14#64029) --------------------------------------------------------------------- To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org