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 05cde3e..8c2564f 100644 --- ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java +++ ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java @@ -1145,7 +1145,10 @@ private void analyzeDropIndex(ASTNode ast) throws SemanticException { } } - inputs.add(new ReadEntity(getTable(tableName))); + Table tbl = getTable(tableName, false); + if (tbl != null) { + inputs.add(new ReadEntity(getTable(tableName))); + } DropIndexDesc dropIdxDesc = new DropIndexDesc(indexName, tableName); rootTasks.add(TaskFactory.get(new DDLWork(getInputs(), getOutputs(), diff --git ql/src/test/queries/clientpositive/drop_index.q ql/src/test/queries/clientpositive/drop_index.q index df23f8d..54ef823 100644 --- ql/src/test/queries/clientpositive/drop_index.q +++ ql/src/test/queries/clientpositive/drop_index.q @@ -1,2 +1,3 @@ SET hive.exec.drop.ignorenonexistent=false; DROP INDEX IF EXISTS UnknownIndex ON src; +DROP INDEX IF EXISTS UnknownIndex ON UnknownTable; diff --git ql/src/test/results/clientpositive/drop_index.q.out ql/src/test/results/clientpositive/drop_index.q.out index 71afdff..ab60cf7 100644 --- ql/src/test/results/clientpositive/drop_index.q.out +++ ql/src/test/results/clientpositive/drop_index.q.out @@ -1,6 +1,8 @@ PREHOOK: query: DROP INDEX IF EXISTS UnknownIndex ON src PREHOOK: type: DROPINDEX -PREHOOK: Input: default@src POSTHOOK: query: DROP INDEX IF EXISTS UnknownIndex ON src POSTHOOK: type: DROPINDEX -POSTHOOK: Input: default@src +PREHOOK: query: DROP INDEX IF EXISTS UnknownIndex ON UnknownTable +PREHOOK: type: DROPINDEX +POSTHOOK: query: DROP INDEX IF EXISTS UnknownIndex ON UnknownTable +POSTHOOK: type: DROPINDEX