Repository: hive Updated Branches: refs/heads/master aaa67fa63 -> 0e2494356
HIVE-16356: Table#validateColumns should avoid checking exhaustively for matches in a list (Janos Gub via Zoltan Haindrich) Signed-off-by: Zoltan Haindrich <k...@rxd.hu> Project: http://git-wip-us.apache.org/repos/asf/hive/repo Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/0e249435 Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/0e249435 Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/0e249435 Branch: refs/heads/master Commit: 0e24943568f9db85aed5d2e618aebad617669932 Parents: aaa67fa Author: Janos Gub <gubja...@gmail.com> Authored: Tue Apr 18 07:03:17 2017 +0200 Committer: Zoltan Haindrich <k...@rxd.hu> Committed: Tue Apr 18 07:04:19 2017 +0200 ---------------------------------------------------------------------- ql/src/java/org/apache/hadoop/hive/ql/metadata/Table.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hive/blob/0e249435/ql/src/java/org/apache/hadoop/hive/ql/metadata/Table.java ---------------------------------------------------------------------- diff --git a/ql/src/java/org/apache/hadoop/hive/ql/metadata/Table.java b/ql/src/java/org/apache/hadoop/hive/ql/metadata/Table.java index 171f944..3122689 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/metadata/Table.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/metadata/Table.java @@ -22,10 +22,12 @@ import java.io.Serializable; import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; +import java.util.HashSet; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import java.util.Properties; +import java.util.Set; import org.apache.commons.lang3.StringUtils; import org.apache.hadoop.conf.Configuration; @@ -972,7 +974,7 @@ public class Table implements Serializable { public static void validateColumns(List<FieldSchema> columns, List<FieldSchema> partCols) throws HiveException { - List<String> colNames = new ArrayList<String>(); + Set<String> colNames = new HashSet<>(); for (FieldSchema partCol: columns) { String colName = normalize(partCol.getName()); if (colNames.contains(colName)) {