aokolnychyi commented on code in PR #12861: URL: https://github.com/apache/iceberg/pull/12861#discussion_r2074185204
########## core/src/main/java/org/apache/iceberg/BaseRowDelta.java: ########## @@ -132,15 +144,44 @@ protected void validate(TableMetadata base, Snapshot parent) { parent); } + if (validateDeletes) { + failMissingDeletePaths(); + } + if (validateNewDataFiles) { validateAddedDataFiles(base, startingSnapshotId, conflictDetectionFilter, parent); } if (validateNewDeleteFiles) { + // validate that explicitly deleted files have not had added deletes + if (!deletedDataFiles.isEmpty()) { + validateNoNewDeletesForDataFiles( + base, startingSnapshotId, conflictDetectionFilter, deletedDataFiles, parent); + } + + // validate that previous deletes do not conflict with added deletes validateNoNewDeleteFiles(base, startingSnapshotId, conflictDetectionFilter, parent); } + validateNoSimultaneousForDeletedFiles(); + validateAddedDVs(base, startingSnapshotId, conflictDetectionFilter, parent); } } + + /** Validates that the data files removed in this commit do not overlap with delete files added */ Review Comment: I am OK keeping it. Maybe rename the method? I think it only covers concurrent position deletes. -- 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: issues-unsubscr...@iceberg.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org For additional commands, e-mail: issues-h...@iceberg.apache.org