This is an automated email from the ASF dual-hosted git repository. daijy 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 5f30498 HIVE-21296: Dropping varchar partition throw exception (Daniel Dai, reviewed by Anishek Agarwal) 5f30498 is described below commit 5f3049828ca872d88c80602e2e7d46d9be6255f2 Author: Daniel Dai <dai...@gmail.com> AuthorDate: Thu Feb 21 10:16:04 2019 -0800 HIVE-21296: Dropping varchar partition throw exception (Daniel Dai, reviewed by Anishek Agarwal) Signed-off-by: Anishek Agarwal <anis...@gmail.com> --- .../java/org/apache/hadoop/hive/ql/plan/ExprNodeDescUtils.java | 3 ++- ql/src/test/queries/clientpositive/partition_varchar1.q | 2 ++ ql/src/test/results/clientpositive/partition_varchar1.q.out | 10 ++++++++++ 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/ql/src/java/org/apache/hadoop/hive/ql/plan/ExprNodeDescUtils.java b/ql/src/java/org/apache/hadoop/hive/ql/plan/ExprNodeDescUtils.java index eb5b111..9febee4 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/plan/ExprNodeDescUtils.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/plan/ExprNodeDescUtils.java @@ -102,7 +102,8 @@ public class ExprNodeDescUtils { private static boolean isDefaultPartition(ExprNodeDesc origin, String defaultPartitionName) { if (origin instanceof ExprNodeConstantDesc && ((ExprNodeConstantDesc)origin).getValue() != null && - ((ExprNodeConstantDesc)origin).getValue().equals(defaultPartitionName)) { + ((ExprNodeConstantDesc)origin).getValue() instanceof String && ((ExprNodeConstantDesc)origin).getValue() + .equals(defaultPartitionName)) { return true; } else { return false; diff --git a/ql/src/test/queries/clientpositive/partition_varchar1.q b/ql/src/test/queries/clientpositive/partition_varchar1.q index 216bcf5..ce9ee76 100644 --- a/ql/src/test/queries/clientpositive/partition_varchar1.q +++ b/ql/src/test/queries/clientpositive/partition_varchar1.q @@ -42,4 +42,6 @@ select count(*) from partition_varchar_1 where dt <= '2000-01-01' and region = 1 -- 20 select count(*) from partition_varchar_1 where dt <> '2000-01-01' and region = 1; +alter table partition_varchar_1 drop partition (dt = '2000-01-01'); + drop table partition_varchar_1; diff --git a/ql/src/test/results/clientpositive/partition_varchar1.q.out b/ql/src/test/results/clientpositive/partition_varchar1.q.out index 93c9adf..b5d1890 100644 --- a/ql/src/test/results/clientpositive/partition_varchar1.q.out +++ b/ql/src/test/results/clientpositive/partition_varchar1.q.out @@ -190,6 +190,16 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@partition_varchar_1 #### A masked pattern was here #### 20 +PREHOOK: query: alter table partition_varchar_1 drop partition (dt = '2000-01-01') +PREHOOK: type: ALTERTABLE_DROPPARTS +PREHOOK: Input: default@partition_varchar_1 +PREHOOK: Output: default@partition_varchar_1@dt=2000-01-01/region=1 +PREHOOK: Output: default@partition_varchar_1@dt=2000-01-01/region=2 +POSTHOOK: query: alter table partition_varchar_1 drop partition (dt = '2000-01-01') +POSTHOOK: type: ALTERTABLE_DROPPARTS +POSTHOOK: Input: default@partition_varchar_1 +POSTHOOK: Output: default@partition_varchar_1@dt=2000-01-01/region=1 +POSTHOOK: Output: default@partition_varchar_1@dt=2000-01-01/region=2 PREHOOK: query: drop table partition_varchar_1 PREHOOK: type: DROPTABLE PREHOOK: Input: default@partition_varchar_1