diff --git metastore/src/java/org/apache/hadoop/hive/metastore/txn/TxnHandler.java metastore/src/java/org/apache/hadoop/hive/metastore/txn/TxnHandler.java index fef2483..bcb0342 100644 --- metastore/src/java/org/apache/hadoop/hive/metastore/txn/TxnHandler.java +++ metastore/src/java/org/apache/hadoop/hive/metastore/txn/TxnHandler.java @@ -3104,7 +3104,9 @@ private boolean isDuplicateKeyError(SQLException ex) { } break; case MYSQL: - if(ex.getErrorCode() == 1022 && "23000".equals(ex.getSQLState())) { + //https://dev.mysql.com/doc/refman/5.5/en/error-messages-server.html + if((ex.getErrorCode() == 1022 || ex.getErrorCode() == 1062 || ex.getErrorCode() == 1586) + && "23000".equals(ex.getSQLState())) { return true; } break;