[ https://issues.apache.org/jira/browse/HDFS-14478?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17518918#comment-17518918 ]
Steve Loughran commented on HDFS-14478: --------------------------------------- needed for native code to make use of HADOOP-16202 > Add libhdfs APIs for openFile > ----------------------------- > > Key: HDFS-14478 > URL: https://issues.apache.org/jira/browse/HDFS-14478 > Project: Hadoop HDFS > Issue Type: Improvement > Components: hdfs-client, libhdfs, native > Reporter: Sahil Takiar > Assignee: Steve Loughran > Priority: Major > Labels: pull-request-available > Time Spent: 40m > Remaining Estimate: 0h > > HADOOP-15229 added a "FileSystem builder-based openFile() API" that allows > specifying configuration values for opening files (similar to HADOOP-14365). > Support for {{openFile}} will be a little tricky as it is asynchronous and > {{FutureDataInputStreamBuilder#build}} returns a {{CompletableFuture}}. > At a high level, the API for {{openFile}} could look something like this: > {code:java} > hdfsFile hdfsOpenFile(hdfsFS fs, const char* path, int flags, > int bufferSize, short replication, tSize blocksize); > hdfsOpenFileBuilder *hdfsOpenFileBuilderAlloc(hdfsFS fs, > const char *path); > hdfsOpenFileBuilder *hdfsOpenFileBuilderMust(hdfsOpenFileBuilder *builder, > const char *key, const char *value); > hdfsOpenFileBuilder *hdfsOpenFileBuilderOpt(hdfsOpenFileBuilder *builder, > const char *key, const char *value); > hdfsOpenFileFuture *hdfsOpenFileBuilderBuild(hdfsOpenFileBuilder *builder); > void hdfsOpenFileBuilderFree(hdfsOpenFileBuilder *builder); > hdfsFile hdfsOpenFileFutureGet(hdfsOpenFileFuture *future); > hdfsFile hdfsOpenFileFutureGetWithTimeout(hdfsOpenFileFuture *future, > int64_t timeout, javaConcurrentTimeUnit timeUnit); > int hdfsOpenFileFutureCancel(hdfsOpenFileFuture *future, > int mayInterruptIfRunning); > void hdfsOpenFileFutureFree(hdfsOpenFileFuture *future); > {code} > Instead of exposing all the functionality of {{CompleteableFuture}} libhdfs > would just expose the functionality of {{Future}}. -- This message was sent by Atlassian Jira (v8.20.1#820001) --------------------------------------------------------------------- To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org