huaxingao commented on code in PR #10643:
URL: https://github.com/apache/iceberg/pull/10643#discussion_r1668984923


##########
api/src/main/java/org/apache/iceberg/actions/ActionsProvider.java:
##########
@@ -70,4 +70,10 @@ default RewritePositionDeleteFiles 
rewritePositionDeletes(Table table) {
     throw new UnsupportedOperationException(
         this.getClass().getName() + " does not implement 
rewritePositionDeletes");
   }
+
+  /** Instantiates an action to remove expired files. */
+  default RemoveExpiredFiles removeExpiredFiles(Table table) {

Review Comment:
   Yes, this PR was separated out from 
https://github.com/apache/iceberg/pull/4705 to get consensus on the interface 
for this action.
   
   The `ExpireSnapshots` action does delete the files associated with expired 
snapshots. However, the `RemoveExpiredFiles` action serves a different purpose. 
While `ExpireSnapshots` removes the expired snapshots from the top-level 
metadata, some files that should be deleted might still remain due to actions 
like table copying. Essentially, `RemoveExpiredFiles` allows the target table 
to simulate the `ExpireSnapshots` behavior in the source table, ensuring that 
the files are cleaned up appropriately.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to