diff --git a/ql/src/java/org/apache/hadoop/hive/ql/plan/ExprNodeFieldDesc.java b/ql/src/java/org/apache/hadoop/hive/ql/plan/ExprNodeFieldDesc.java index 12860dbdf2..942e46d67a 100755 --- a/ql/src/java/org/apache/hadoop/hive/ql/plan/ExprNodeFieldDesc.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/plan/ExprNodeFieldDesc.java @@ -1,4 +1,4 @@ -/* +/** * 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 @@ -20,10 +20,11 @@ import java.io.Serializable; import java.util.ArrayList; +import java.util.Collections; +import java.util.LinkedHashSet; import java.util.List; import org.apache.commons.lang.builder.HashCodeBuilder; -import org.apache.hadoop.hive.ql.exec.Utilities; import org.apache.hadoop.hive.serde2.typeinfo.TypeInfo; /** @@ -53,9 +54,7 @@ public ExprNodeFieldDesc(TypeInfo typeInfo, ExprNodeDesc desc, @Override public List getChildren() { - List children = new ArrayList(2); - children.add(desc); - return children; + return Collections.singletonList(desc); } public ExprNodeDesc getDesc() { @@ -94,11 +93,10 @@ public String getExprString() { @Override public List getCols() { - List colList = new ArrayList(); - if (desc != null) { - colList = Utilities.mergeUniqElems(colList, desc.getCols()); + if (desc == null) { + return Collections.emptyList(); } - return colList; + return new ArrayList<>(new LinkedHashSet<>(desc.getCols())); } @Override