diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java index 314a1868c0..2916596933 100644 --- ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java +++ ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java @@ -713,6 +713,10 @@ private int alterResourcePlan(Hive db, AlterResourcePlanDesc desc) throws HiveEx if (resourcePlan.getStatus() != null) { isActivate = resourcePlan.getStatus() == WMResourcePlanStatus.ACTIVE; } + if (!resourcePlan.isSetName()) { + // If not altering the name, still set it in the structure to pass thrift validation. + resourcePlan.setName(desc.getResourcePlanName()); + } WMFullResourcePlan appliedRp = db.alterResourcePlan(desc.getResourcePlanName(), resourcePlan, desc.isEnableActivate(), desc.isForceDeactivate(), desc.isReplace()); diff --git ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java index 5b9ab3aa7f..74c271d80b 100644 --- ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java +++ ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java @@ -1255,6 +1255,9 @@ private void analyzeAlterPool(ASTNode ast) throws SemanticException { addServiceOutput(); } if (poolChanges != null) { + if (!poolChanges.isSetPoolPath()) { + poolChanges.setPoolPath(poolPath); + } rootTasks.add(TaskFactory.get(new DDLWork(getInputs(), getOutputs(), new CreateOrAlterWMPoolDesc(poolChanges, poolPath, true)))); }