RussellSpitzer commented on a change in pull request #2402:
URL: https://github.com/apache/iceberg/pull/2402#discussion_r605860585



##########
File path: 
aws/src/main/java/org/apache/iceberg/aws/glue/GlueTableOperations.java
##########
@@ -103,14 +105,30 @@ protected void doRefresh() {
   @Override
   protected void doCommit(TableMetadata base, TableMetadata metadata) {
     String newMetadataLocation = writeNewMetadata(metadata, currentVersion() + 
1);
-    boolean exceptionThrown = true;
+    CommitStatus commitStatus = CommitStatus.FAILURE;
+
     try {
       lock(newMetadataLocation);
       Table glueTable = getGlueTable();
       checkMetadataLocation(glueTable, base);
       Map<String, String> properties = prepareProperties(glueTable, 
newMetadataLocation);
-      persistGlueTable(glueTable, properties);
-      exceptionThrown = false;
+
+      try {
+        persistGlueTable(glueTable, properties);
+        commitStatus = CommitStatus.SUCCESS;
+      } catch (Throwable persistFailure) {

Review comment:
       I think it is less important now that we start out with the commit state 
set to unknown, but in the original design we basically started out assuming 
that the commit had succeeded and switched a flag to indicate that it had 
failed. We can probably have this just be runtime exception now since now the 
logic is basically for deciding when to retry.




-- 
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.

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