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_r248028056
########## File path: core/src/main/java/com/netflix/iceberg/BaseMetastoreTableOperations.java ########## @@ -84,13 +75,24 @@ protected void requestRefresh() { } protected String writeNewMetadata(TableMetadata metadata, int version) { - String newTableMetadataFilePath = newTableMetadataFilePath(metadata, version); - OutputFile newMetadataLocation = fileIo.newOutputFile(newTableMetadataFilePath); + FileIO initializedFileIo = io(); + // This would be false if the subclass overrides io() and returns a different kind. + if (initializedFileIo instanceof HadoopFileIO) { + ((HadoopFileIO) initializedFileIo).updateTableMetadata(metadata); Review comment: > I think we would expose the classes themselves. We'd add an interface to the API and implement that. That gets around the TableOperations problem. Meaning, add an interface on top of `TableMetadata`? ---------------------------------------------------------------- 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