You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@iceberg.apache.org by GitBox <gi...@apache.org> on 2022/02/01 20:04:45 UTC
[GitHub] [iceberg] szehon-ho commented on a change in pull request #2925: Core: Support serializable isolation for ReplacePartitions
szehon-ho commented on a change in pull request #2925:
URL: https://github.com/apache/iceberg/pull/2925#discussion_r796960251
##########
File path: api/src/main/java/org/apache/iceberg/ReplacePartitions.java
##########
@@ -20,19 +20,23 @@
package org.apache.iceberg;
/**
- * Not recommended: API for overwriting files in a table by partition.
+ * API for overwriting files in a table by partition.
* <p>
* This is provided to implement SQL compatible with Hive table operations but is not recommended.
* Instead, use the {@link OverwriteFiles overwrite API} to explicitly overwrite data.
* <p>
+ * The default validation mode is idempotent, meaning the overwrite is
+ * correct and should be committed out regardless of other concurrent changes to the table.
+ * Alternatively, this API can be configured to validate that no new data or deletes
+ * have been applied since a snapshot id associated when this operation began.
+ * </p>
Review comment:
Removed, thanks
##########
File path: api/src/main/java/org/apache/iceberg/ReplacePartitions.java
##########
@@ -49,4 +53,19 @@
* @return this for method chaining
*/
ReplacePartitions validateAppendOnly();
+
+ /**
+ * Set the snapshot ID used in validations for this operation.
+ * <p>
+ * All validations will check changes after this snapshot ID. If this is not called or snapshot is set to an
+ * invalid snapshot id, validation will be skipped.
Review comment:
Done
##########
File path: api/src/main/java/org/apache/iceberg/ReplacePartitions.java
##########
@@ -49,4 +53,19 @@
* @return this for method chaining
*/
ReplacePartitions validateAppendOnly();
+
+ /**
+ * Set the snapshot ID used in validations for this operation.
+ * <p>
+ * All validations will check changes after this snapshot ID. If this is not called or snapshot is set to an
+ * invalid snapshot id, validation will be skipped.
+ *
+ * This method should be called before this operation is committed.
+ * If a concurrent operation committed a data file or row delta after the given snapshot id
Review comment:
Done
--
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-unsubscribe@iceberg.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org