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



##########
File path: 
hive-metastore/src/main/java/org/apache/iceberg/hive/HiveTableOperations.java
##########
@@ -271,29 +273,32 @@ protected void doCommit(TableMetadata base, TableMetadata 
metadata) {
       try {
         persistTable(tbl, updateHiveTable);
         commitStatus = CommitStatus.SUCCESS;
-      } catch (Throwable persistFailure) {
+      } catch (org.apache.hadoop.hive.metastore.api.AlreadyExistsException e) {
+        throw new AlreadyExistsException(e, "Table already exists: %s.%s", 
database, tableName);
+
+      } catch (InvalidObjectException e) {
+        throw new ValidationException(e, "Invalid table name for %s.%s", 
database, tableName);
+
+      } catch (Throwable e) {
+        if (e.getMessage() != null && e.getMessage().contains("Table/View 
'HIVE_LOCKS' does not exist")) {
+          throw new RuntimeException("Failed to acquire locks from metastore 
because 'HIVE_LOCKS' doesn't " +

Review comment:
       Maybe ... "Failed to acquire locks from metastore because the underlying 
metastore table 'HIVE_LOCKS' does not exist. This can occur when using an 
embedded metastore which does not support transactions. To fix this use an 
alternative metastore."




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

Reply via email to