You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by mg...@apache.org on 2019/11/27 08:43:28 UTC
[hive] branch master updated: HIVE-22488 Break up
DDLSemanticAnalyzer - extract Table creation analyzers (Miklos Gergely,
reviewed by Jesus Camacho Rodriguez)
This is an automated email from the ASF dual-hosted git repository.
mgergely pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hive.git
The following commit(s) were added to refs/heads/master by this push:
new 8d31922 HIVE-22488 Break up DDLSemanticAnalyzer - extract Table creation analyzers (Miklos Gergely, reviewed by Jesus Camacho Rodriguez)
8d31922 is described below
commit 8d31922a1bf96aaa9f1139ec0ddd43b6c4728e6c
Author: miklosgergely <mg...@cloudera.com>
AuthorDate: Wed Nov 13 11:13:11 2019 +0100
HIVE-22488 Break up DDLSemanticAnalyzer - extract Table creation analyzers (Miklos Gergely, reviewed by Jesus Camacho Rodriguez)
---
.../cli/SemanticAnalysis/CreateTableHook.java | 2 +-
.../ql/metadata/DummySemanticAnalyzerHook.java | 2 +-
.../ql/metadata/DummySemanticAnalyzerHook1.java | 2 +-
.../{creation => create}/CreateTableDesc.java | 2 +-
.../{creation => create}/CreateTableOperation.java | 9 ++--
.../like}/CreateTableLikeDesc.java | 2 +-
.../like}/CreateTableLikeOperation.java | 3 +-
.../{creation => create/like}/package-info.java | 4 +-
.../table/{creation => create}/package-info.java | 4 +-
.../table/create/show/ShowCreateTableAnalyzer.java | 57 ++++++++++++++++++++
.../show}/ShowCreateTableDesc.java | 2 +-
.../show}/ShowCreateTableOperation.java | 3 +-
.../{creation => create/show}/package-info.java | 4 +-
.../hive/ql/ddl/table/drop/DropTableAnalyzer.java | 62 ++++++++++++++++++++++
.../table/{creation => drop}/DropTableDesc.java | 2 +-
.../{creation => drop}/DropTableOperation.java | 2 +-
.../ddl/table/{creation => drop}/package-info.java | 4 +-
.../exec/repl/bootstrap/load/table/LoadTable.java | 2 +-
.../org/apache/hadoop/hive/ql/io/AcidUtils.java | 2 +-
.../hive/ql/parse/AcidExportSemanticAnalyzer.java | 4 +-
.../hadoop/hive/ql/parse/DDLSemanticAnalyzer.java | 37 -------------
.../hive/ql/parse/ImportSemanticAnalyzer.java | 2 +-
.../apache/hadoop/hive/ql/parse/ParseContext.java | 2 +-
.../java/org/apache/hadoop/hive/ql/parse/QB.java | 2 +-
.../hadoop/hive/ql/parse/SemanticAnalyzer.java | 4 +-
.../hive/ql/parse/SemanticAnalyzerFactory.java | 2 -
.../apache/hadoop/hive/ql/parse/TaskCompiler.java | 2 +-
.../parse/repl/load/message/DropTableHandler.java | 2 +-
.../hadoop/hive/ql/plan/ImportTableDesc.java | 2 +-
.../apache/hadoop/hive/ql/plan/LoadFileDesc.java | 2 +-
.../org/apache/hadoop/hive/ql/plan/PlanUtils.java | 2 +-
.../ql/txn/compactor/MmMajorQueryCompactor.java | 2 +-
.../hadoop/hive/ql/parse/TestHiveDecimalParse.java | 2 +-
33 files changed, 159 insertions(+), 78 deletions(-)
diff --git a/hcatalog/core/src/main/java/org/apache/hive/hcatalog/cli/SemanticAnalysis/CreateTableHook.java b/hcatalog/core/src/main/java/org/apache/hive/hcatalog/cli/SemanticAnalysis/CreateTableHook.java
index 98a44b8..084bbfe 100644
--- a/hcatalog/core/src/main/java/org/apache/hive/hcatalog/cli/SemanticAnalysis/CreateTableHook.java
+++ b/hcatalog/core/src/main/java/org/apache/hive/hcatalog/cli/SemanticAnalysis/CreateTableHook.java
@@ -28,7 +28,7 @@ import org.apache.hadoop.fs.Path;
import org.apache.hadoop.hive.metastore.api.FieldSchema;
import org.apache.hadoop.hive.ql.ddl.DDLDesc;
import org.apache.hadoop.hive.ql.ddl.DDLTask;
-import org.apache.hadoop.hive.ql.ddl.table.creation.CreateTableDesc;
+import org.apache.hadoop.hive.ql.ddl.table.create.CreateTableDesc;
import org.apache.hadoop.hive.ql.exec.Task;
import org.apache.hadoop.hive.ql.metadata.Hive;
import org.apache.hadoop.hive.ql.metadata.HiveException;
diff --git a/itests/util/src/main/java/org/apache/hadoop/hive/ql/metadata/DummySemanticAnalyzerHook.java b/itests/util/src/main/java/org/apache/hadoop/hive/ql/metadata/DummySemanticAnalyzerHook.java
index 8ccbf97..06f4a44 100644
--- a/itests/util/src/main/java/org/apache/hadoop/hive/ql/metadata/DummySemanticAnalyzerHook.java
+++ b/itests/util/src/main/java/org/apache/hadoop/hive/ql/metadata/DummySemanticAnalyzerHook.java
@@ -24,7 +24,7 @@ import java.util.List;
import java.util.Map;
import org.apache.hadoop.hive.ql.ddl.DDLTask;
-import org.apache.hadoop.hive.ql.ddl.table.creation.CreateTableDesc;
+import org.apache.hadoop.hive.ql.ddl.table.create.CreateTableDesc;
import org.apache.hadoop.hive.ql.exec.Task;
import org.apache.hadoop.hive.ql.parse.ASTNode;
import org.apache.hadoop.hive.ql.parse.AbstractSemanticAnalyzerHook;
diff --git a/itests/util/src/main/java/org/apache/hadoop/hive/ql/metadata/DummySemanticAnalyzerHook1.java b/itests/util/src/main/java/org/apache/hadoop/hive/ql/metadata/DummySemanticAnalyzerHook1.java
index 00e7582..e2a0eaea 100644
--- a/itests/util/src/main/java/org/apache/hadoop/hive/ql/metadata/DummySemanticAnalyzerHook1.java
+++ b/itests/util/src/main/java/org/apache/hadoop/hive/ql/metadata/DummySemanticAnalyzerHook1.java
@@ -24,7 +24,7 @@ import java.util.List;
import java.util.Map;
import org.apache.hadoop.hive.ql.ddl.DDLTask;
-import org.apache.hadoop.hive.ql.ddl.table.creation.CreateTableDesc;
+import org.apache.hadoop.hive.ql.ddl.table.create.CreateTableDesc;
import org.apache.hadoop.hive.ql.exec.Task;
import org.apache.hadoop.hive.ql.parse.ASTNode;
import org.apache.hadoop.hive.ql.parse.AbstractSemanticAnalyzerHook;
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/CreateTableDesc.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/CreateTableDesc.java
similarity index 99%
rename from ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/CreateTableDesc.java
rename to ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/CreateTableDesc.java
index fe559bf..affb1af 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/CreateTableDesc.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/CreateTableDesc.java
@@ -16,7 +16,7 @@
* limitations under the License.
*/
-package org.apache.hadoop.hive.ql.ddl.table.creation;
+package org.apache.hadoop.hive.ql.ddl.table.create;
import java.io.Serializable;
import java.util.ArrayList;
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/CreateTableOperation.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/CreateTableOperation.java
similarity index 97%
rename from ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/CreateTableOperation.java
rename to ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/CreateTableOperation.java
index 91795f7..cf4bc81 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/CreateTableOperation.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/CreateTableOperation.java
@@ -16,7 +16,7 @@
* limitations under the License.
*/
-package org.apache.hadoop.hive.ql.ddl.table.creation;
+package org.apache.hadoop.hive.ql.ddl.table.create;
import org.apache.commons.collections.CollectionUtils;
import org.apache.hadoop.fs.Path;
@@ -35,6 +35,7 @@ import org.apache.hadoop.hive.ql.exec.repl.util.ReplUtils;
import org.apache.hadoop.hive.ql.hooks.WriteEntity;
import org.apache.hadoop.hive.ql.hooks.LineageInfo.DataContainer;
import org.apache.hadoop.hive.ql.io.AcidUtils;
+import org.apache.hadoop.hive.ql.metadata.Hive;
import org.apache.hadoop.hive.ql.metadata.HiveException;
import org.apache.hadoop.hive.ql.metadata.Table;
import org.apache.hadoop.hive.ql.parse.ReplicationSpec;
@@ -163,14 +164,12 @@ public class CreateTableOperation extends DDLOperation<CreateTableDesc> {
Path tabLocation = new Path(tTable.getSd().getLocation());
List<Path> newFilesList = new ArrayList<>();
try {
- context.getDb().listFilesInsideAcidDirectory(tabLocation,
- tabLocation.getFileSystem(context.getConf()), newFilesList);
+ Hive.listFilesInsideAcidDirectory(tabLocation, tabLocation.getFileSystem(context.getConf()), newFilesList);
} catch (IOException e) {
LOG.error("Error listing files", e);
throw new HiveException(e);
}
- context.getDb().addWriteNotificationLog(createdTable, null, newFilesList,
- tTable.getWriteId());
+ context.getDb().addWriteNotificationLog(createdTable, null, newFilesList, tTable.getWriteId());
}
}
}
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/CreateTableLikeDesc.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/like/CreateTableLikeDesc.java
similarity index 98%
rename from ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/CreateTableLikeDesc.java
rename to ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/like/CreateTableLikeDesc.java
index 186b474..d191dc5 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/CreateTableLikeDesc.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/like/CreateTableLikeDesc.java
@@ -16,7 +16,7 @@
* limitations under the License.
*/
-package org.apache.hadoop.hive.ql.ddl.table.creation;
+package org.apache.hadoop.hive.ql.ddl.table.create.like;
import java.io.Serializable;
import java.util.Map;
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/CreateTableLikeOperation.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/like/CreateTableLikeOperation.java
similarity index 98%
rename from ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/CreateTableLikeOperation.java
rename to ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/like/CreateTableLikeOperation.java
index 8a11261..8795d66 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/CreateTableLikeOperation.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/like/CreateTableLikeOperation.java
@@ -16,7 +16,7 @@
* limitations under the License.
*/
-package org.apache.hadoop.hive.ql.ddl.table.creation;
+package org.apache.hadoop.hive.ql.ddl.table.create.like;
import static org.apache.hadoop.hive.metastore.api.hive_metastoreConstants.META_TABLE_STORAGE;
@@ -35,6 +35,7 @@ import org.apache.hadoop.hive.ql.exec.Utilities;
import org.apache.hadoop.hive.ql.ddl.DDLOperation;
import org.apache.hadoop.hive.ql.ddl.DDLOperationContext;
import org.apache.hadoop.hive.ql.ddl.DDLUtils;
+import org.apache.hadoop.hive.ql.ddl.table.create.CreateTableOperation;
import org.apache.hadoop.hive.ql.hooks.WriteEntity;
import org.apache.hadoop.hive.ql.metadata.HiveException;
import org.apache.hadoop.hive.ql.metadata.Table;
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/package-info.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/like/package-info.java
similarity index 86%
copy from ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/package-info.java
copy to ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/like/package-info.java
index 6644b4b..fa57c92 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/package-info.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/like/package-info.java
@@ -16,5 +16,5 @@
* limitations under the License.
*/
-/** Table creation related DDL operation descriptions and operations. */
-package org.apache.hadoop.hive.ql.ddl.table.creation;
+/** Create table like DDL operation. */
+package org.apache.hadoop.hive.ql.ddl.table.create.like;
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/package-info.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/package-info.java
similarity index 86%
copy from ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/package-info.java
copy to ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/package-info.java
index 6644b4b..6006350 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/package-info.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/package-info.java
@@ -16,5 +16,5 @@
* limitations under the License.
*/
-/** Table creation related DDL operation descriptions and operations. */
-package org.apache.hadoop.hive.ql.ddl.table.creation;
+/** Create table DDL operation. */
+package org.apache.hadoop.hive.ql.ddl.table.create;
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/show/ShowCreateTableAnalyzer.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/show/ShowCreateTableAnalyzer.java
new file mode 100644
index 0000000..99b6ea6
--- /dev/null
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/show/ShowCreateTableAnalyzer.java
@@ -0,0 +1,57 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.hadoop.hive.ql.ddl.table.create.show;
+
+import org.apache.hadoop.hive.ql.QueryState;
+import org.apache.hadoop.hive.ql.ddl.DDLWork;
+import org.apache.hadoop.hive.ql.ddl.DDLSemanticAnalyzerFactory.DDLType;
+import org.apache.hadoop.hive.ql.exec.Task;
+import org.apache.hadoop.hive.ql.exec.TaskFactory;
+import org.apache.hadoop.hive.ql.hooks.ReadEntity;
+import org.apache.hadoop.hive.ql.metadata.Table;
+import org.apache.hadoop.hive.ql.parse.ASTNode;
+import org.apache.hadoop.hive.ql.parse.BaseSemanticAnalyzer;
+import org.apache.hadoop.hive.ql.parse.HiveParser;
+import org.apache.hadoop.hive.ql.parse.SemanticException;
+
+/**
+ * Analyzer for showing table creation commands.
+ */
+@DDLType(type=HiveParser.TOK_SHOW_CREATETABLE)
+public class ShowCreateTableAnalyzer extends BaseSemanticAnalyzer {
+ public ShowCreateTableAnalyzer(QueryState queryState) throws SemanticException {
+ super(queryState);
+ }
+
+ @Override
+ public void analyzeInternal(ASTNode root) throws SemanticException {
+ ctx.setResFile(ctx.getLocalTmpPath());
+
+ String tableName = getUnescapedName((ASTNode)root.getChild(0));
+ Table tab = getTable(tableName);
+ inputs.add(new ReadEntity(tab));
+
+ ShowCreateTableDesc desc = new ShowCreateTableDesc(tableName, ctx.getResFile().toString());
+ Task<DDLWork> task = TaskFactory.get(new DDLWork(getInputs(), getOutputs(), desc));
+ rootTasks.add(task);
+
+ task.setFetchSource(true);
+ setFetchTask(createFetchTask(ShowCreateTableDesc.SCHEMA));
+ }
+}
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/ShowCreateTableDesc.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/show/ShowCreateTableDesc.java
similarity index 96%
rename from ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/ShowCreateTableDesc.java
rename to ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/show/ShowCreateTableDesc.java
index fb107ce..4687cbc 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/ShowCreateTableDesc.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/show/ShowCreateTableDesc.java
@@ -16,7 +16,7 @@
* limitations under the License.
*/
-package org.apache.hadoop.hive.ql.ddl.table.creation;
+package org.apache.hadoop.hive.ql.ddl.table.create.show;
import java.io.Serializable;
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/ShowCreateTableOperation.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/show/ShowCreateTableOperation.java
similarity index 98%
rename from ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/ShowCreateTableOperation.java
rename to ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/show/ShowCreateTableOperation.java
index ac54138..affed03 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/ShowCreateTableOperation.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/show/ShowCreateTableOperation.java
@@ -16,10 +16,11 @@
* limitations under the License.
*/
-package org.apache.hadoop.hive.ql.ddl.table.creation;
+package org.apache.hadoop.hive.ql.ddl.table.create.show;
import org.apache.hadoop.hive.ql.ddl.DDLOperationContext;
import org.apache.hadoop.hive.ql.ddl.DDLUtils;
+import org.apache.hadoop.hive.ql.ddl.table.create.CreateTableOperation;
import static org.apache.hadoop.hive.metastore.api.hive_metastoreConstants.META_TABLE_STORAGE;
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/package-info.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/show/package-info.java
similarity index 86%
copy from ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/package-info.java
copy to ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/show/package-info.java
index 6644b4b..db74e82 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/package-info.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/create/show/package-info.java
@@ -16,5 +16,5 @@
* limitations under the License.
*/
-/** Table creation related DDL operation descriptions and operations. */
-package org.apache.hadoop.hive.ql.ddl.table.creation;
+/** Show create table DDL operation. */
+package org.apache.hadoop.hive.ql.ddl.table.create.show;
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/drop/DropTableAnalyzer.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/drop/DropTableAnalyzer.java
new file mode 100644
index 0000000..bf06d3a
--- /dev/null
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/drop/DropTableAnalyzer.java
@@ -0,0 +1,62 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.hadoop.hive.ql.ddl.table.drop;
+
+import org.apache.hadoop.hive.conf.HiveConf;
+import org.apache.hadoop.hive.conf.HiveConf.ConfVars;
+import org.apache.hadoop.hive.ql.QueryState;
+import org.apache.hadoop.hive.ql.ddl.DDLWork;
+import org.apache.hadoop.hive.ql.ddl.DDLSemanticAnalyzerFactory.DDLType;
+import org.apache.hadoop.hive.ql.exec.TaskFactory;
+import org.apache.hadoop.hive.ql.hooks.ReadEntity;
+import org.apache.hadoop.hive.ql.hooks.WriteEntity;
+import org.apache.hadoop.hive.ql.metadata.Table;
+import org.apache.hadoop.hive.ql.parse.ASTNode;
+import org.apache.hadoop.hive.ql.parse.BaseSemanticAnalyzer;
+import org.apache.hadoop.hive.ql.parse.HiveParser;
+import org.apache.hadoop.hive.ql.parse.ReplicationSpec;
+import org.apache.hadoop.hive.ql.parse.SemanticException;
+
+/**
+ * Analyzer for table dropping commands.
+ */
+@DDLType(type=HiveParser.TOK_DROPTABLE)
+public class DropTableAnalyzer extends BaseSemanticAnalyzer {
+ public DropTableAnalyzer(QueryState queryState) throws SemanticException {
+ super(queryState);
+ }
+
+ @Override
+ public void analyzeInternal(ASTNode root) throws SemanticException {
+ String tableName = getUnescapedName((ASTNode) root.getChild(0));
+ boolean ifExists = (root.getFirstChildWithType(HiveParser.TOK_IFEXISTS) != null);
+ boolean throwException = !ifExists && !HiveConf.getBoolVar(conf, ConfVars.DROP_IGNORES_NON_EXISTENT);
+
+ Table table = getTable(tableName, throwException);
+ if (table != null) {
+ inputs.add(new ReadEntity(table));
+ outputs.add(new WriteEntity(table, WriteEntity.WriteType.DDL_EXCLUSIVE));
+ }
+
+ boolean purge = (root.getFirstChildWithType(HiveParser.KW_PURGE) != null);
+ ReplicationSpec replicationSpec = new ReplicationSpec(root);
+ DropTableDesc desc = new DropTableDesc(tableName, ifExists, purge, replicationSpec);
+ rootTasks.add(TaskFactory.get(new DDLWork(getInputs(), getOutputs(), desc)));
+ }
+}
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/DropTableDesc.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/drop/DropTableDesc.java
similarity index 97%
rename from ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/DropTableDesc.java
rename to ql/src/java/org/apache/hadoop/hive/ql/ddl/table/drop/DropTableDesc.java
index 1410d60..2ecdf9e 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/DropTableDesc.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/drop/DropTableDesc.java
@@ -16,7 +16,7 @@
* limitations under the License.
*/
-package org.apache.hadoop.hive.ql.ddl.table.creation;
+package org.apache.hadoop.hive.ql.ddl.table.drop;
import java.io.Serializable;
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/DropTableOperation.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/drop/DropTableOperation.java
similarity index 98%
rename from ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/DropTableOperation.java
rename to ql/src/java/org/apache/hadoop/hive/ql/ddl/table/drop/DropTableOperation.java
index 8d852cd..f4d1a35 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/DropTableOperation.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/drop/DropTableOperation.java
@@ -16,7 +16,7 @@
* limitations under the License.
*/
-package org.apache.hadoop.hive.ql.ddl.table.creation;
+package org.apache.hadoop.hive.ql.ddl.table.drop;
import org.apache.hadoop.hive.metastore.conf.MetastoreConf;
import org.apache.hadoop.hive.ql.ddl.DDLOperationContext;
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/package-info.java b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/drop/package-info.java
similarity index 86%
rename from ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/package-info.java
rename to ql/src/java/org/apache/hadoop/hive/ql/ddl/table/drop/package-info.java
index 6644b4b..31c1fef 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/package-info.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/ddl/table/drop/package-info.java
@@ -16,5 +16,5 @@
* limitations under the License.
*/
-/** Table creation related DDL operation descriptions and operations. */
-package org.apache.hadoop.hive.ql.ddl.table.creation;
+/** Drop table DDL operation. */
+package org.apache.hadoop.hive.ql.ddl.table.drop;
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/repl/bootstrap/load/table/LoadTable.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/repl/bootstrap/load/table/LoadTable.java
index 8da2b2e..65588fd 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/exec/repl/bootstrap/load/table/LoadTable.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/repl/bootstrap/load/table/LoadTable.java
@@ -27,7 +27,7 @@ import org.apache.hadoop.hive.metastore.api.InvalidOperationException;
import org.apache.hadoop.hive.metastore.api.MetaException;
import org.apache.hadoop.hive.ql.ErrorMsg;
import org.apache.hadoop.hive.ql.ddl.DDLWork;
-import org.apache.hadoop.hive.ql.ddl.table.creation.DropTableDesc;
+import org.apache.hadoop.hive.ql.ddl.table.drop.DropTableDesc;
import org.apache.hadoop.hive.ql.exec.ReplCopyTask;
import org.apache.hadoop.hive.ql.exec.Task;
import org.apache.hadoop.hive.ql.exec.TaskFactory;
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/io/AcidUtils.java b/ql/src/java/org/apache/hadoop/hive/ql/io/AcidUtils.java
index 1824596..b25f185 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/io/AcidUtils.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/io/AcidUtils.java
@@ -59,7 +59,7 @@ import org.apache.hadoop.hive.metastore.api.hive_metastoreConstants;
import org.apache.hadoop.hive.metastore.api.TxnType;
import org.apache.hadoop.hive.metastore.utils.MetaStoreUtils;
import org.apache.hadoop.hive.ql.ErrorMsg;
-import org.apache.hadoop.hive.ql.ddl.table.creation.CreateTableDesc;
+import org.apache.hadoop.hive.ql.ddl.table.create.CreateTableDesc;
import org.apache.hadoop.hive.ql.exec.Utilities;
import org.apache.hadoop.hive.ql.hooks.Entity;
import org.apache.hadoop.hive.ql.hooks.ReadEntity;
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/parse/AcidExportSemanticAnalyzer.java b/ql/src/java/org/apache/hadoop/hive/ql/parse/AcidExportSemanticAnalyzer.java
index 169f059..cc3c5da 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/parse/AcidExportSemanticAnalyzer.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/parse/AcidExportSemanticAnalyzer.java
@@ -38,8 +38,8 @@ import org.apache.hadoop.hive.ql.TaskQueue;
import org.apache.hadoop.hive.ql.QueryState;
import org.apache.hadoop.hive.ql.ddl.DDLTask;
import org.apache.hadoop.hive.ql.ddl.DDLWork;
-import org.apache.hadoop.hive.ql.ddl.table.creation.CreateTableLikeDesc;
-import org.apache.hadoop.hive.ql.ddl.table.creation.DropTableDesc;
+import org.apache.hadoop.hive.ql.ddl.table.create.like.CreateTableLikeDesc;
+import org.apache.hadoop.hive.ql.ddl.table.drop.DropTableDesc;
import org.apache.hadoop.hive.ql.ddl.table.misc.AlterTableSetPropertiesDesc;
import org.apache.hadoop.hive.ql.exec.StatsTask;
import org.apache.hadoop.hive.ql.exec.Task;
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java b/ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java
index 8612286..5ebf719 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java
@@ -74,8 +74,6 @@ import org.apache.hadoop.hive.ql.ddl.table.column.ShowColumnsDesc;
import org.apache.hadoop.hive.ql.ddl.table.constaint.AlterTableAddConstraintDesc;
import org.apache.hadoop.hive.ql.ddl.table.constaint.AlterTableDropConstraintDesc;
import org.apache.hadoop.hive.ql.ddl.table.constaint.Constraints;
-import org.apache.hadoop.hive.ql.ddl.table.creation.DropTableDesc;
-import org.apache.hadoop.hive.ql.ddl.table.creation.ShowCreateTableDesc;
import org.apache.hadoop.hive.ql.ddl.table.info.DescTableDesc;
import org.apache.hadoop.hive.ql.ddl.table.info.ShowTablePropertiesDesc;
import org.apache.hadoop.hive.ql.ddl.table.info.ShowTableStatusDesc;
@@ -347,9 +345,6 @@ public class DDLSemanticAnalyzer extends BaseSemanticAnalyzer {
}
break;
}
- case HiveParser.TOK_DROPTABLE:
- analyzeDropTable(ast);
- break;
case HiveParser.TOK_TRUNCATETABLE:
analyzeTruncateTable(ast);
break;
@@ -409,10 +404,6 @@ public class DDLSemanticAnalyzer extends BaseSemanticAnalyzer {
ctx.setResFile(ctx.getLocalTmpPath());
analyzeShowPartitions(ast);
break;
- case HiveParser.TOK_SHOW_CREATETABLE:
- ctx.setResFile(ctx.getLocalTmpPath());
- analyzeShowCreateTable(ast);
- break;
case HiveParser.TOK_LOCKTABLE:
analyzeLockTable(ast);
break;
@@ -543,23 +534,6 @@ public class DDLSemanticAnalyzer extends BaseSemanticAnalyzer {
return counter;
}
- private void analyzeDropTable(ASTNode ast) throws SemanticException {
- String tableName = getUnescapedName((ASTNode) ast.getChild(0));
- boolean ifExists = (ast.getFirstChildWithType(HiveParser.TOK_IFEXISTS) != null);
- boolean throwException = !ifExists && !HiveConf.getBoolVar(conf, ConfVars.DROP_IGNORES_NON_EXISTENT);
-
- Table table = getTable(tableName, throwException);
- if (table != null) {
- inputs.add(new ReadEntity(table));
- outputs.add(new WriteEntity(table, WriteEntity.WriteType.DDL_EXCLUSIVE));
- }
-
- boolean purge = (ast.getFirstChildWithType(HiveParser.KW_PURGE) != null);
- ReplicationSpec replicationSpec = new ReplicationSpec(ast);
- DropTableDesc dropTableDesc = new DropTableDesc(tableName, ifExists, purge, replicationSpec);
- rootTasks.add(TaskFactory.get(new DDLWork(getInputs(), getOutputs(), dropTableDesc)));
- }
-
private void analyzeTruncateTable(ASTNode ast) throws SemanticException {
ASTNode root = (ASTNode) ast.getChild(0); // TOK_TABLE_PARTITION
final String tableName = getUnescapedName((ASTNode) root.getChild(0));
@@ -1615,17 +1589,6 @@ public class DDLSemanticAnalyzer extends BaseSemanticAnalyzer {
setFetchTask(createFetchTask(ShowPartitionsDesc.SCHEMA));
}
- private void analyzeShowCreateTable(ASTNode ast) throws SemanticException {
- ShowCreateTableDesc showCreateTblDesc;
- String tableName = getUnescapedName((ASTNode)ast.getChild(0));
- showCreateTblDesc = new ShowCreateTableDesc(tableName, ctx.getResFile().toString());
-
- Table tab = getTable(tableName);
- inputs.add(new ReadEntity(tab));
- rootTasks.add(TaskFactory.get(new DDLWork(getInputs(), getOutputs(), showCreateTblDesc)));
- setFetchTask(createFetchTask(ShowCreateTableDesc.SCHEMA));
- }
-
private void analyzeShowTables(ASTNode ast) throws SemanticException {
ShowTablesDesc showTblsDesc;
String dbName = SessionState.get().getCurrentDatabase();
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/parse/ImportSemanticAnalyzer.java b/ql/src/java/org/apache/hadoop/hive/ql/parse/ImportSemanticAnalyzer.java
index 85c5360..eefe2ae 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/parse/ImportSemanticAnalyzer.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/parse/ImportSemanticAnalyzer.java
@@ -40,7 +40,7 @@ import org.apache.hadoop.hive.ql.ErrorMsg;
import org.apache.hadoop.hive.metastore.txn.TxnUtils;
import org.apache.hadoop.hive.ql.QueryState;
import org.apache.hadoop.hive.ql.ddl.DDLWork;
-import org.apache.hadoop.hive.ql.ddl.table.creation.DropTableDesc;
+import org.apache.hadoop.hive.ql.ddl.table.drop.DropTableDesc;
import org.apache.hadoop.hive.ql.ddl.table.partition.AlterTableAddPartitionDesc;
import org.apache.hadoop.hive.ql.exec.ReplCopyTask;
import org.apache.hadoop.hive.ql.exec.Task;
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/parse/ParseContext.java b/ql/src/java/org/apache/hadoop/hive/ql/parse/ParseContext.java
index 5f5d7e2..91bdbfd 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/parse/ParseContext.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/parse/ParseContext.java
@@ -23,7 +23,7 @@ import org.apache.hadoop.hive.conf.HiveConf;
import org.apache.hadoop.hive.ql.Context;
import org.apache.hadoop.hive.ql.QueryProperties;
import org.apache.hadoop.hive.ql.QueryState;
-import org.apache.hadoop.hive.ql.ddl.table.creation.CreateTableDesc;
+import org.apache.hadoop.hive.ql.ddl.table.create.CreateTableDesc;
import org.apache.hadoop.hive.ql.ddl.view.create.CreateViewDesc;
import org.apache.hadoop.hive.ql.ddl.view.materialized.update.MaterializedViewUpdateDesc;
import org.apache.hadoop.hive.ql.exec.AbstractMapJoinOperator;
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/parse/QB.java b/ql/src/java/org/apache/hadoop/hive/ql/parse/QB.java
index 9f5c551..9d94b6e 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/parse/QB.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/parse/QB.java
@@ -30,7 +30,7 @@ import java.util.Set;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.apache.hadoop.fs.Path;
-import org.apache.hadoop.hive.ql.ddl.table.creation.CreateTableDesc;
+import org.apache.hadoop.hive.ql.ddl.table.create.CreateTableDesc;
import org.apache.hadoop.hive.ql.ddl.view.create.CreateViewDesc;
import org.apache.hadoop.hive.ql.metadata.Table;
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java b/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java
index ff60ba5..60bfba8 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java
@@ -104,8 +104,8 @@ import org.apache.hadoop.hive.ql.cache.results.CacheUsage;
import org.apache.hadoop.hive.ql.cache.results.QueryResultsCache;
import org.apache.hadoop.hive.ql.ddl.DDLWork;
import org.apache.hadoop.hive.ql.ddl.misc.hooks.InsertCommitHookDesc;
-import org.apache.hadoop.hive.ql.ddl.table.creation.CreateTableDesc;
-import org.apache.hadoop.hive.ql.ddl.table.creation.CreateTableLikeDesc;
+import org.apache.hadoop.hive.ql.ddl.table.create.CreateTableDesc;
+import org.apache.hadoop.hive.ql.ddl.table.create.like.CreateTableLikeDesc;
import org.apache.hadoop.hive.ql.ddl.table.misc.AlterTableUnsetPropertiesDesc;
import org.apache.hadoop.hive.ql.ddl.table.misc.PreInsertTableDesc;
import org.apache.hadoop.hive.ql.ddl.view.create.CreateViewDesc;
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzerFactory.java b/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzerFactory.java
index 855c3b6..b65db74 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzerFactory.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzerFactory.java
@@ -105,14 +105,12 @@ public final class SemanticAnalyzerFactory {
queryState.setCommandType(HiveOperation.ALTERVIEW_AS);
return new SemanticAnalyzer(queryState);
}
- case HiveParser.TOK_DROPTABLE:
case HiveParser.TOK_DESCTABLE:
case HiveParser.TOK_MSCK:
case HiveParser.TOK_SHOWTABLES:
case HiveParser.TOK_SHOWCOLUMNS:
case HiveParser.TOK_SHOW_TABLESTATUS:
case HiveParser.TOK_SHOW_TBLPROPERTIES:
- case HiveParser.TOK_SHOW_CREATETABLE:
case HiveParser.TOK_SHOWPARTITIONS:
case HiveParser.TOK_SHOWLOCKS:
case HiveParser.TOK_SHOWDBLOCKS:
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/parse/TaskCompiler.java b/ql/src/java/org/apache/hadoop/hive/ql/parse/TaskCompiler.java
index 36fb93f..1e1d65b 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/parse/TaskCompiler.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/parse/TaskCompiler.java
@@ -35,7 +35,7 @@ import org.apache.hadoop.hive.ql.QueryState;
import org.apache.hadoop.hive.ql.ddl.DDLDesc;
import org.apache.hadoop.hive.ql.ddl.DDLTask;
import org.apache.hadoop.hive.ql.ddl.DDLWork;
-import org.apache.hadoop.hive.ql.ddl.table.creation.CreateTableDesc;
+import org.apache.hadoop.hive.ql.ddl.table.create.CreateTableDesc;
import org.apache.hadoop.hive.ql.ddl.view.create.CreateViewDesc;
import org.apache.hadoop.hive.ql.ddl.view.materialized.alter.rewrite.AlterMaterializedViewRewriteDesc;
import org.apache.hadoop.hive.ql.ddl.view.materialized.update.MaterializedViewUpdateDesc;
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/parse/repl/load/message/DropTableHandler.java b/ql/src/java/org/apache/hadoop/hive/ql/parse/repl/load/message/DropTableHandler.java
index 0f1f05b..ec4cb82 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/parse/repl/load/message/DropTableHandler.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/parse/repl/load/message/DropTableHandler.java
@@ -20,7 +20,7 @@ package org.apache.hadoop.hive.ql.parse.repl.load.message;
import org.apache.hadoop.hive.metastore.messaging.AlterTableMessage;
import org.apache.hadoop.hive.metastore.messaging.DropTableMessage;
import org.apache.hadoop.hive.ql.ddl.DDLWork;
-import org.apache.hadoop.hive.ql.ddl.table.creation.DropTableDesc;
+import org.apache.hadoop.hive.ql.ddl.table.drop.DropTableDesc;
import org.apache.hadoop.hive.ql.exec.Task;
import org.apache.hadoop.hive.ql.exec.TaskFactory;
import org.apache.hadoop.hive.ql.parse.SemanticException;
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/plan/ImportTableDesc.java b/ql/src/java/org/apache/hadoop/hive/ql/plan/ImportTableDesc.java
index 7f8242c..dc7040e 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/plan/ImportTableDesc.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/plan/ImportTableDesc.java
@@ -29,7 +29,7 @@ import org.apache.hadoop.hive.metastore.TableType;
import org.apache.hadoop.hive.metastore.api.FieldSchema;
import org.apache.hadoop.hive.metastore.api.Order;
import org.apache.hadoop.hive.ql.ddl.DDLWork;
-import org.apache.hadoop.hive.ql.ddl.table.creation.CreateTableDesc;
+import org.apache.hadoop.hive.ql.ddl.table.create.CreateTableDesc;
import org.apache.hadoop.hive.ql.ddl.view.create.CreateViewDesc;
import org.apache.hadoop.hive.ql.exec.Task;
import org.apache.hadoop.hive.ql.exec.TaskFactory;
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/plan/LoadFileDesc.java b/ql/src/java/org/apache/hadoop/hive/ql/plan/LoadFileDesc.java
index 26568ef..07bcef8 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/plan/LoadFileDesc.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/plan/LoadFileDesc.java
@@ -21,7 +21,7 @@ package org.apache.hadoop.hive.ql.plan;
import java.io.Serializable;
import org.apache.hadoop.fs.Path;
-import org.apache.hadoop.hive.ql.ddl.table.creation.CreateTableDesc;
+import org.apache.hadoop.hive.ql.ddl.table.create.CreateTableDesc;
import org.apache.hadoop.hive.ql.ddl.view.create.CreateViewDesc;
import org.apache.hadoop.hive.ql.exec.Utilities;
import org.apache.hadoop.hive.ql.io.AcidUtils;
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/plan/PlanUtils.java b/ql/src/java/org/apache/hadoop/hive/ql/plan/PlanUtils.java
index b53635d..2314f49 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/plan/PlanUtils.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/plan/PlanUtils.java
@@ -42,7 +42,7 @@ import org.apache.hadoop.hive.metastore.HiveMetaStoreUtils;
import org.apache.hadoop.hive.metastore.api.FieldSchema;
import org.apache.hadoop.hive.metastore.api.hive_metastoreConstants;
import org.apache.hadoop.hive.metastore.utils.MetaStoreUtils;
-import org.apache.hadoop.hive.ql.ddl.table.creation.CreateTableDesc;
+import org.apache.hadoop.hive.ql.ddl.table.create.CreateTableDesc;
import org.apache.hadoop.hive.ql.ddl.view.create.CreateViewDesc;
import org.apache.hadoop.hive.ql.exec.ColumnInfo;
import org.apache.hadoop.hive.ql.exec.RowSchema;
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/txn/compactor/MmMajorQueryCompactor.java b/ql/src/java/org/apache/hadoop/hive/ql/txn/compactor/MmMajorQueryCompactor.java
index f7e0a85..27a3ce8 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/txn/compactor/MmMajorQueryCompactor.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/txn/compactor/MmMajorQueryCompactor.java
@@ -36,7 +36,7 @@ import org.apache.hadoop.hive.metastore.api.Table;
import org.apache.hadoop.hive.metastore.api.hive_metastoreConstants;
import org.apache.hadoop.hive.metastore.txn.CompactionInfo;
import org.apache.hadoop.hive.ql.DriverUtils;
-import org.apache.hadoop.hive.ql.ddl.table.creation.ShowCreateTableOperation;
+import org.apache.hadoop.hive.ql.ddl.table.create.show.ShowCreateTableOperation;
import org.apache.hadoop.hive.ql.io.AcidOutputFormat;
import org.apache.hadoop.hive.ql.io.AcidUtils;
import org.apache.hadoop.hive.ql.metadata.HiveException;
diff --git a/ql/src/test/org/apache/hadoop/hive/ql/parse/TestHiveDecimalParse.java b/ql/src/test/org/apache/hadoop/hive/ql/parse/TestHiveDecimalParse.java
index c81ab2d..448532b 100644
--- a/ql/src/test/org/apache/hadoop/hive/ql/parse/TestHiveDecimalParse.java
+++ b/ql/src/test/org/apache/hadoop/hive/ql/parse/TestHiveDecimalParse.java
@@ -24,7 +24,7 @@ import org.apache.hadoop.hive.ql.Driver;
import org.apache.hadoop.hive.ql.QueryPlan;
import org.apache.hadoop.hive.ql.ddl.DDLTask;
import org.apache.hadoop.hive.ql.ddl.DDLWork;
-import org.apache.hadoop.hive.ql.ddl.table.creation.CreateTableDesc;
+import org.apache.hadoop.hive.ql.ddl.table.create.CreateTableDesc;
import org.apache.hadoop.hive.ql.processors.CommandProcessorException;
import org.apache.hadoop.hive.ql.session.SessionState;
import org.junit.Assert;