mccheah commented on a change in pull request #73: Allow data output streams to be generated via custom mechanisms when given partitioning and file name URL: https://github.com/apache/incubator-iceberg/pull/73#discussion_r247744889
########## File path: api/src/main/java/com/netflix/iceberg/io/FileIO.java ########## @@ -47,4 +46,30 @@ * Delete the file at the given path. */ void deleteFile(String path); + + /** + * Get an {@link InputFile} to get the bytes for this table's metadata file with the given name. + */ + InputFile readMetadataFile(String fileName); + + /** + * Get an {@link OutputFile} to write bytes for a new table metadata file with the given name. + */ + OutputFile newMetadataFile(String fileName); + + /** + * Get an {@link OutputFile} for writing bytes to a new data file for this table. + * <p> + * The partition values of the rows in this file may be used to derive the final location of + * the file. + */ + OutputFile newPartitionedDataFile( + PartitionSpec partitionSpec, StructLike partitionData, String fileName); Review comment: Do we need the second unpartitioned variant? For example, what if we passed `PartitionSpec#unpartitioned` and an empty `PartitionData` structure instead? Or do we think that the API should make unpartitioned files a first-class concept? ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org For additional commands, e-mail: issues-h...@iceberg.apache.org