RussellSpitzer commented on a change in pull request #3039:
URL: https://github.com/apache/iceberg/pull/3039#discussion_r765841994
##########
File path:
spark/v3.2/spark/src/main/java/org/apache/iceberg/spark/source/SparkMicroBatchStream.java
##########
@@ -195,31 +200,47 @@ public void stop() {
private boolean shouldProcess(Snapshot snapshot) {
String op = snapshot.operation();
- switch (op) {
- case DataOperations.APPEND:
- return true;
- case DataOperations.REPLACE:
- return false;
- case DataOperations.DELETE:
- Preconditions.checkState(skipDelete,
- "Cannot process delete snapshot : %s. Set read option %s to allow
skipping snapshots of type delete",
- snapshot.snapshotId(),
SparkReadOptions.STREAMING_SKIP_DELETE_SNAPSHOTS);
- return false;
- default:
- throw new IllegalStateException(String.format(
- "Cannot process %s snapshot: %s", op.toLowerCase(Locale.ROOT),
snapshot.snapshotId()));
+ Preconditions.checkState(!op.equals(DataOperations.DELETE) || skipDelete,
+ "Cannot process delete snapshot: %s", snapshot.snapshotId());
+ Preconditions.checkState(
+ op.equals(DataOperations.DELETE) || op.equals(DataOperations.APPEND)
|| op.equals(DataOperations.REPLACE),
+ "Cannot process %s snapshot: %s", op.toLowerCase(Locale.ROOT),
snapshot.snapshotId());
Review comment:
Not part of this PR but we should probably say why we cannot process the
snapshot here, We can add that as a new issue for a new dev to work on later
though.
--
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]