nastra commented on code in PR #6091:
URL: https://github.com/apache/iceberg/pull/6091#discussion_r1131274430
##########
spark/v3.3/spark/src/main/java/org/apache/iceberg/spark/actions/ExpireSnapshotsSparkAction.java:
##########
@@ -268,11 +268,67 @@ private ExpireSnapshots.Result
deleteFiles(Iterator<FileInfo> files) {
DeleteSummary summary = deleteFiles(deleteExecutorService, deleteFunc,
files);
LOG.info("Deleted {} total files", summary.totalFilesCount());
- return new BaseExpireSnapshotsActionResult(
+ return new ExpireSnapshotsActionResult(
summary.dataFilesCount(),
summary.positionDeleteFilesCount(),
summary.equalityDeleteFilesCount(),
summary.manifestsCount(),
- summary.manifestListsCount());
+ summary.manifestListsCount(),
+ summary.statisticsFilesCount());
+ }
+
+ private static class ExpireSnapshotsActionResult implements
ExpireSnapshots.Result {
Review Comment:
TBH I'm not sure it's worth adding a new class for this. Why not make
`ExpireSnapshots.Result` immutable with a default implementation for
`deletedStatisticsFilesCount()`?
```
/** The action result that contains a summary of the execution. */
@Value.Immutable
interface Result {
/** Returns the number of deleted data files. */
long deletedDataFilesCount();
/** Returns the number of deleted equality delete files. */
long deletedEqualityDeleteFilesCount();
/** Returns the number of deleted position delete files. */
long deletedPositionDeleteFilesCount();
/** Returns the number of deleted manifests. */
long deletedManifestsCount();
/** Returns the number of deleted manifest lists. */
long deletedManifestListsCount();
/** Returns the number of deleted statistics files. */
@Value.Default
default long deletedStatisticsFilesCount() {
return 0L;
}
}
```
and then you'd create an instance via
```
ImmutableResult.builder()
.deletedDataFilesCount(summary.dataFilesCount())
.deletedPositionDeleteFilesCount(summary.positionDeleteFilesCount())
.deletedEqualityDeleteFilesCount(summary.equalityDeleteFilesCount())
.deletedManifestsCount(summary.manifestsCount())
.deletedManifestListsCount(summary.manifestListsCount())
.deletedStatisticsFilesCount(..)
.build();
```
--
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]