From 9c3181294a53b9780cf4d5bb66662b372f863361 Mon Sep 17 00:00:00 2001 From: Dongkyu Hwangbo Date: Wed, 2 Dec 2015 13:31:36 +0900 Subject: [PATCH 01/12] initial commit --- .../tajo/catalog/AbstractCatalogClient.java | 2 +- .../org/apache/tajo/catalog/CatalogUtil.java | 2 +- .../java/org/apache/tajo/catalog/Schema.java | 12 +++-- .../org/apache/tajo/catalog/SchemaUtil.java | 4 +- .../tajo/catalog/statistics/TableStats.java | 4 +- .../tajo/function/FunctionSignature.java | 7 ++- .../tajo/catalog/store/HiveCatalogStore.java | 4 +- .../catalog/store/TestHiveCatalogStore.java | 4 +- .../InfoSchemaMetadataDictionary.java | 2 +- .../tajo/catalog/store/AbstractDBStore.java | 14 +++--- .../store/XMLCatalogSchemaManager.java | 2 +- .../org/apache/tajo/cli/tools/TajoDump.java | 3 +- .../tajo/rule/SelfDiagnosisRuleSession.java | 2 +- .../tajo/service/BaseServiceTracker.java | 6 ++- .../main/java/org/apache/tajo/util/TUtil.java | 44 ++++--------------- .../tajo/util/graph/SimpleDirectedGraph.java | 4 +- .../tajo/validation/PathListValidator.java | 3 +- .../org/apache/tajo/rule/TestRuleEngine.java | 5 ++- .../org/apache/tajo/rule/TestRuleSession.java | 7 +-- .../planner/physical/TestPhysicalPlanner.java | 12 +++-- .../tajo/engine/query/TestGroupByQuery.java | 4 +- .../tajo/engine/query/TestHBaseTable.java | 4 +- .../engine/query/TestSelectNestedRecord.java | 38 ++++++++++++---- .../rs/resources/TestQueryResultResource.java | 5 ++- .../tajo/engine/function/FunctionLoader.java | 2 +- .../engine/planner/PhysicalPlannerImpl.java | 5 ++- .../tajo/engine/planner/enforce/Enforcer.java | 3 +- .../BaseGlobalPlanRewriteRuleProvider.java | 3 +- .../rewriter/rules/BroadcastJoinRule.java | 11 +++-- .../DistinctGroupbyHashAggregationExec.java | 2 +- .../planner/physical/ExternalSortExec.java | 16 ++++--- .../apache/tajo/ha/HdfsServiceTracker.java | 7 +-- .../apache/tajo/master/exec/DDLExecutor.java | 4 +- .../NonForwardQueryResultSystemScanner.java | 2 +- .../org/apache/tajo/querymaster/Query.java | 4 +- .../tajo/querymaster/Repartitioner.java | 23 +++++++--- .../tajo/worker/TaskAttemptContext.java | 4 +- .../main/resources/webapps/admin/cluster.jsp | 2 +- .../main/resources/webapps/admin/index.jsp | 3 +- .../org/apache/tajo/plan/ExprAnnotator.java | 8 ++-- .../apache/tajo/plan/LogicalOptimizer.java | 2 +- .../org/apache/tajo/plan/LogicalPlan.java | 4 +- .../org/apache/tajo/plan/LogicalPlanner.java | 20 +++++---- .../apache/tajo/plan/NamedExprsManager.java | 2 +- .../apache/tajo/plan/expr/AlgebraicUtil.java | 4 +- .../apache/tajo/plan/expr/EvalTreeUtil.java | 4 +- .../function/python/PythonScriptEngine.java | 3 +- .../plan/function/stream/StreamingUtil.java | 3 +- .../tajo/plan/nameresolver/NameResolver.java | 6 +-- .../plan/nameresolver/ResolverByLegacy.java | 3 +- ...aseLogicalPlanPreprocessPhaseProvider.java | 8 ++-- .../BaseLogicalPlanRewriteRuleProvider.java | 12 ++--- .../plan/rewrite/BaseSchemaBuildPhase.java | 4 +- .../rewrite/rules/FilterPushDownRule.java | 27 ++++++------ .../rewrite/rules/InSubqueryRewriteRule.java | 7 +-- .../rewrite/rules/ProjectionPushDownRule.java | 25 ++++++----- .../plan/serder/LogicalNodeDeserializer.java | 2 +- .../plan/serder/LogicalNodeSerializer.java | 3 +- .../org/apache/tajo/plan/util/ExprFinder.java | 7 +-- .../util/PartitionFilterAlgebraVisitor.java | 3 +- .../apache/tajo/plan/util/PlannerUtil.java | 4 +- .../verifier/PostLogicalPlanVerifier.java | 3 +- .../tajo/storage/fragment/FileFragment.java | 4 +- .../apache/tajo/storage/TestMergeScanner.java | 6 ++- .../tajo/storage/jdbc/JdbcFragment.java | 8 +++- 65 files changed, 267 insertions(+), 200 deletions(-) diff --git a/tajo-catalog/tajo-catalog-client/src/main/java/org/apache/tajo/catalog/AbstractCatalogClient.java b/tajo-catalog/tajo-catalog-client/src/main/java/org/apache/tajo/catalog/AbstractCatalogClient.java index 45538e88a6..9dc1140b19 100644 --- a/tajo-catalog/tajo-catalog-client/src/main/java/org/apache/tajo/catalog/AbstractCatalogClient.java +++ b/tajo-catalog/tajo-catalog-client/src/main/java/org/apache/tajo/catalog/AbstractCatalogClient.java @@ -782,7 +782,7 @@ public final Collection getAllIndexesByTable(final String databaseNam final IndexListResponse response = stub.getAllIndexesByTable(null, proto); ensureOk(response.getState()); - List indexDescs = TUtil.newList(); + List indexDescs = new ArrayList<>(); for (IndexDescProto descProto : response.getIndexDescList()) { indexDescs.add(new IndexDesc(descProto)); } diff --git a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/CatalogUtil.java b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/CatalogUtil.java index 6dd12e6a2a..ca7ee98bca 100644 --- a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/CatalogUtil.java +++ b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/CatalogUtil.java @@ -873,7 +873,7 @@ public static AlterTableDesc addOrDropPartition(String tableName, String[] colum */ public static Pair, String> getPartitionKeyNamePair(String[] columns, String[] values) { Pair, String> pair = null; - List partitionKeyList = TUtil.newList(); + List partitionKeyList = new ArrayList<>(); StringBuilder sb = new StringBuilder(); for (int i = 0; i < columns.length; i++) { diff --git a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/Schema.java b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/Schema.java index ae7d27446e..d12e190f91 100644 --- a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/Schema.java +++ b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/Schema.java @@ -21,6 +21,7 @@ import com.google.common.base.Objects; import com.google.common.collect.ImmutableList; import com.google.gson.annotations.Expose; +import org.apache.avro.generic.GenericData; import org.apache.tajo.catalog.SchemaUtil.ColumnVisitor; import org.apache.tajo.catalog.json.CatalogGsonHelper; import org.apache.tajo.catalog.proto.CatalogProtos.ColumnProto; @@ -56,7 +57,7 @@ public Schema() { public Schema(SchemaProto proto) { init(); - List toBeAdded = TUtil.newList(); + List toBeAdded = new ArrayList<>(); for (int i = 0; i < proto.getFieldsCount(); i++) { deserializeColumn(toBeAdded, proto.getFieldsList(), i); } @@ -83,7 +84,8 @@ private static void deserializeColumn(List tobeAdded, List // where is start index of nested fields? int childStartIndex = tobeAdded.size() - childNum; // Extract nested fields - List nestedColumns = TUtil.newList(tobeAdded.subList(childStartIndex, childStartIndex + childNum)); + List nestedColumns = new ArrayList<>(); + nestedColumns.addAll(tobeAdded.subList(childStartIndex, childStartIndex + childNum)); // Remove nested fields from the the current level for (int i = 0; i < childNum; i++) { @@ -309,7 +311,7 @@ public List getRootColumns() { * @return A list of all columns */ public List getAllColumns() { - final List columnList = TUtil.newList(); + final List columnList = new ArrayList<>(); SchemaUtil.visitSchema(this, new ColumnVisitor() { @Override @@ -423,7 +425,9 @@ public synchronized Schema addColumn(String name, TypeDesc typeDesc) { Column newCol = new Column(normalized, typeDesc); fields.add(newCol); fieldsByQualifiedName.put(newCol.getQualifiedName(), fields.size() - 1); - fieldsByName.put(newCol.getSimpleName(), TUtil.newList(fields.size() - 1)); + List inputList = new ArrayList<>(); + inputList.add(fields.size() - 1); + fieldsByName.put(newCol.getSimpleName(), inputList); return this; } diff --git a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/SchemaUtil.java b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/SchemaUtil.java index 6af9e067e1..c9f8c158b0 100644 --- a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/SchemaUtil.java +++ b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/SchemaUtil.java @@ -24,6 +24,7 @@ import org.apache.tajo.exception.UnsupportedDataTypeException; import org.apache.tajo.util.TUtil; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -183,7 +184,8 @@ private static void visitInDepthFirstOrder(int depth, if (column.getDataType().getType() == Type.RECORD) { for (Column nestedColumn : column.typeDesc.nestedRecordSchema.getRootColumns()) { - List newPath = TUtil.newList(path); + List newPath = new ArrayList<>(); + newPath.addAll(path); newPath.add(column.getQualifiedName()); visitInDepthFirstOrder(depth + 1, newPath, function, nestedColumn); diff --git a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/statistics/TableStats.java b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/statistics/TableStats.java index 9ff1fba973..c66500d2f3 100644 --- a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/statistics/TableStats.java +++ b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/statistics/TableStats.java @@ -55,7 +55,7 @@ public void reset() { numShuffleOutputs = 0; avgRows = 0l; readBytes = 0l; - columnStatses = TUtil.newList(); + columnStatses = new ArrayList<>(); } public TableStats(CatalogProtos.TableStatsProto proto) { @@ -83,7 +83,7 @@ public TableStats(CatalogProtos.TableStatsProto proto) { this.readBytes = 0l; } - this.columnStatses = TUtil.newList(); + this.columnStatses = new ArrayList<>(); for (CatalogProtos.ColumnStatsProto colProto : proto.getColStatList()) { if (colProto.getColumn().getDataType().getType() == TajoDataTypes.Type.PROTOBUF) { continue; diff --git a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java index ea4090fd23..fb3a6bbbb3 100644 --- a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java +++ b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java @@ -24,6 +24,9 @@ import org.apache.tajo.common.ProtoObject; import org.apache.tajo.util.TUtil; +import java.util.ArrayList; +import java.util.List; + import static org.apache.tajo.catalog.proto.CatalogProtos.FunctionSignatureProto; import static org.apache.tajo.catalog.proto.CatalogProtos.FunctionType; import static org.apache.tajo.common.TajoDataTypes.DataType; @@ -109,7 +112,9 @@ public FunctionSignatureProto getProto() { FunctionSignatureProto.Builder builder = FunctionSignatureProto.newBuilder(); builder.setType(functionType); builder.setName(name); - builder.addAllParameterTypes(TUtil.newList(paramTypes)); + List inputList = new ArrayList<>(); + inputList.add(paramTypes); + builder.addAllParameterTypes(inputList); builder.setReturnType(returnType); return builder.build(); } diff --git a/tajo-catalog/tajo-catalog-drivers/tajo-hive/src/main/java/org/apache/tajo/catalog/store/HiveCatalogStore.java b/tajo-catalog/tajo-catalog-drivers/tajo-hive/src/main/java/org/apache/tajo/catalog/store/HiveCatalogStore.java index ae77a1f248..37c2b579a9 100644 --- a/tajo-catalog/tajo-catalog-drivers/tajo-hive/src/main/java/org/apache/tajo/catalog/store/HiveCatalogStore.java +++ b/tajo-catalog/tajo-catalog-drivers/tajo-hive/src/main/java/org/apache/tajo/catalog/store/HiveCatalogStore.java @@ -1020,7 +1020,7 @@ private List getPartitionsFromHiveMetaStore(String databaseN List parititonColumns = null; try { - partitions = TUtil.newList(); + partitions = new ArrayList<>(); client = clientPool.getClient(); List hivePartitions = client.getHiveClient().listPartitionsByFilter(databaseName, tableName @@ -1243,7 +1243,7 @@ public List getAllPartitions() { public void addPartitions(String databaseName, String tableName, List partitions , boolean ifNotExists) { HiveCatalogStoreClientPool.HiveCatalogStoreClient client = null; - List addPartitions = TUtil.newList(); + List addPartitions = new ArrayList<>(); CatalogProtos.PartitionDescProto existingPartition = null; try { diff --git a/tajo-catalog/tajo-catalog-drivers/tajo-hive/src/test/java/org/apache/tajo/catalog/store/TestHiveCatalogStore.java b/tajo-catalog/tajo-catalog-drivers/tajo-hive/src/test/java/org/apache/tajo/catalog/store/TestHiveCatalogStore.java index b4bc53f5fc..dc392a9217 100644 --- a/tajo-catalog/tajo-catalog-drivers/tajo-hive/src/test/java/org/apache/tajo/catalog/store/TestHiveCatalogStore.java +++ b/tajo-catalog/tajo-catalog-drivers/tajo-hive/src/test/java/org/apache/tajo/catalog/store/TestHiveCatalogStore.java @@ -297,7 +297,7 @@ public void testAddTableByPartition() throws Exception { testAddPartition(table1.getUri(), NATION, "n_nationkey=30/n_date=20150101"); testAddPartition(table1.getUri(), NATION, "n_nationkey=30/n_date=20150102"); - List partitionNames = TUtil.newList(); + List partitionNames = new ArrayList<>(); partitionNames.add("n_nationkey=40/n_date=20150801"); partitionNames.add("n_nationkey=40/n_date=20150802"); partitionNames.add("n_nationkey=50/n_date=20150801"); @@ -445,7 +445,7 @@ private void testAddPartition(URI uri, String tableName, String partitionName) t } private void testAddPartitions(URI uri, String tableName, List partitionNames) throws Exception { - List partitions = TUtil.newList(); + List partitions = new ArrayList<>(); for (String partitionName : partitionNames) { CatalogProtos.PartitionDescProto.Builder builder = CatalogProtos.PartitionDescProto.newBuilder(); builder.setPartitionName(partitionName); diff --git a/tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/dictionary/InfoSchemaMetadataDictionary.java b/tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/dictionary/InfoSchemaMetadataDictionary.java index be2913ffd4..b5fac49186 100644 --- a/tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/dictionary/InfoSchemaMetadataDictionary.java +++ b/tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/dictionary/InfoSchemaMetadataDictionary.java @@ -79,7 +79,7 @@ public String getSystemDatabaseName() { } public List getAllSystemTables() { - List systemTableNames = TUtil.newList(); + List systemTableNames = new ArrayList<>(); for (TableDescriptor descriptor: schemaInfoTableDescriptors) { systemTableNames.add(descriptor.getTableNameString()); diff --git a/tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/AbstractDBStore.java b/tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/AbstractDBStore.java index 88d4d60f9d..cc56cf944a 100644 --- a/tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/AbstractDBStore.java +++ b/tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/AbstractDBStore.java @@ -431,7 +431,7 @@ private Collection getAllTablespaceNamesInternal(@Nullable String whereC @Override public List getTablespaces() { - List tablespaces = TUtil.newList(); + List tablespaces = new ArrayList<>(); String sql = "SELECT SPACE_ID, SPACE_NAME, SPACE_HANDLER, SPACE_URI FROM " + TB_SPACES ; @@ -2138,7 +2138,7 @@ public List getPartitionsByAlgebra(PartitionsByAlgebraProto String selectStatement = null; Pair> pair = null; - List partitions = TUtil.newList(); + List partitions = new ArrayList<>(); List filterSets = null; int databaseId = getDatabaseId(request.getDatabaseName()); @@ -2250,7 +2250,7 @@ private Pair> getSelectStatementAndPartitionFil Expr[] exprs = null; try { - List filterSets = TUtil.newList(); + List filterSets = new ArrayList<>(); if (json != null && !json.isEmpty()) { Expr algebra = JsonHelper.fromJson(json, Expr.class); @@ -2297,7 +2297,7 @@ private Pair> getSelectStatementAndPartitionFil PartitionFilterSet filterSet = new PartitionFilterSet(); filterSet.setColumnName(target.getSimpleName()); - List> list = TUtil.newList(); + List> list = new ArrayList<>(); list.addAll(visitor.getParameters()); filterSet.addParameters(list); @@ -2321,7 +2321,7 @@ private Pair> getSelectStatementAndPartitionFil PartitionFilterSet filterSet = new PartitionFilterSet(); filterSet.setColumnName(target.getSimpleName()); - List> list = TUtil.newList(); + List> list = new ArrayList<>(); list.addAll(visitor.getParameters()); filterSet.addParameters(list); @@ -2872,7 +2872,7 @@ public boolean existIndexesByTable(String databaseName, String tableName) @Override public List getAllIndexes() throws UndefinedDatabaseException { - List indexDescProtos = TUtil.newList(); + List indexDescProtos = new ArrayList<>(); for (String databaseName : getAllDatabaseNames()) { for (String tableName : getAllTableNames(databaseName)) { try { @@ -3029,7 +3029,7 @@ class PartitionFilterSet { private List> parameters; public PartitionFilterSet() { - parameters = TUtil.newList(); + parameters = new ArrayList<>(); } public String getColumnName() { diff --git a/tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/XMLCatalogSchemaManager.java b/tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/XMLCatalogSchemaManager.java index c8b7386686..3b8fef335b 100644 --- a/tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/XMLCatalogSchemaManager.java +++ b/tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/XMLCatalogSchemaManager.java @@ -336,7 +336,7 @@ public void upgradeBaseSchema(Connection conn, int currentVersion) { public boolean catalogAlreadyExists(Connection conn) { boolean result = false; try { - List constants = TUtil.newList(); + List constants = new ArrayList<>(); constants.add(CatalogConstants.TB_META); constants.add(CatalogConstants.TB_SPACES); constants.add(CatalogConstants.TB_DATABASES); diff --git a/tajo-cli/src/main/java/org/apache/tajo/cli/tools/TajoDump.java b/tajo-cli/src/main/java/org/apache/tajo/cli/tools/TajoDump.java index 7fa1705567..30d1eeb96e 100644 --- a/tajo-cli/src/main/java/org/apache/tajo/cli/tools/TajoDump.java +++ b/tajo-cli/src/main/java/org/apache/tajo/cli/tools/TajoDump.java @@ -169,7 +169,8 @@ private static void dumpDatabase(TajoClient client, String databaseName, PrintWr writer.write("\n\n"); // returned list is immutable. - List tableNames = TUtil.newList(client.getTableList(databaseName)); + List tableNames = new ArrayList<>(); + tableNames.addAll(client.getTableList(databaseName)); Collections.sort(tableNames); for (String tableName : tableNames) { try { diff --git a/tajo-common/src/main/java/org/apache/tajo/rule/SelfDiagnosisRuleSession.java b/tajo-common/src/main/java/org/apache/tajo/rule/SelfDiagnosisRuleSession.java index e47269f256..b1a82e6e04 100644 --- a/tajo-common/src/main/java/org/apache/tajo/rule/SelfDiagnosisRuleSession.java +++ b/tajo-common/src/main/java/org/apache/tajo/rule/SelfDiagnosisRuleSession.java @@ -67,7 +67,7 @@ public void fireRules(EvaluationContext context) throws EvaluationFailedExceptio protected List getCandidateRules() { Map> wrapperMap = null; - List candidateRules = TUtil.newList(); + List candidateRules = new ArrayList<>(); wrapperMap = ruleEngine.getRules(); Class callerClazz = getCallerClassName(); diff --git a/tajo-common/src/main/java/org/apache/tajo/service/BaseServiceTracker.java b/tajo-common/src/main/java/org/apache/tajo/service/BaseServiceTracker.java index e598f2a2a3..e8cb260416 100644 --- a/tajo-common/src/main/java/org/apache/tajo/service/BaseServiceTracker.java +++ b/tajo-common/src/main/java/org/apache/tajo/service/BaseServiceTracker.java @@ -23,6 +23,7 @@ import java.io.IOException; import java.net.InetSocketAddress; +import java.util.ArrayList; import java.util.List; public class BaseServiceTracker implements ServiceTracker { @@ -43,7 +44,8 @@ public BaseServiceTracker(TajoConf conf) { tajoMasterInfo.setCatalogAddress(conf.getSocketAddrVar(TajoConf.ConfVars.CATALOG_ADDRESS)); tajoMasterInfo.setWebServerAddress(conf.getSocketAddrVar(TajoConf.ConfVars.TAJO_MASTER_INFO_ADDRESS)); - tajoMasterInfos = TUtil.newList(tajoMasterInfo); + tajoMasterInfos = new ArrayList<>(); + tajoMasterInfos.add(tajoMasterInfo); } @Override @@ -94,7 +96,7 @@ public int formatHA(TajoConf conf) throws ServiceTrackerException { @Override public List getMasters(TajoConf conf) throws ServiceTrackerException { - List list = TUtil.newList(); + List list = new ArrayList<>(); list.add(getMasterAddress()); return list; } diff --git a/tajo-common/src/main/java/org/apache/tajo/util/TUtil.java b/tajo-common/src/main/java/org/apache/tajo/util/TUtil.java index b54ae6a202..59f4da9b91 100644 --- a/tajo-common/src/main/java/org/apache/tajo/util/TUtil.java +++ b/tajo-common/src/main/java/org/apache/tajo/util/TUtil.java @@ -122,42 +122,10 @@ public static T[] concatAll(T[] first, T[]... rest) { return result; } - public static Map newLinkedHashMap() { - return new LinkedHashMap<>(); - } - - public static Map newLinkedHashMap(K k, V v) { - HashMap newMap = new LinkedHashMap<>(); - newMap.put(k, v); - return newMap; - } - public static Map newConcurrentHashMap() { return new ConcurrentHashMap<>(); } - public static List newList() { - return new ArrayList<>(); - } - - public static List newList(T...items) { - List list = new ArrayList<>(); - for (T t : items) { - list.add(t); - } - - return list; - } - - public static List newList(Collection items) { - List list = new ArrayList<>(); - for (T t : items) { - list.add(t); - } - - return list; - } - /** * It check if T is null or not. * @@ -176,7 +144,9 @@ public static void putToNestedList(Map> map, KEY if (map.containsKey(k1)) { map.get(k1).add(value); } else { - map.put(k1, TUtil.newList(value)); + List inputList = new ArrayList<>(); + inputList.add(value); + map.put(k1, inputList); } } @@ -185,7 +155,9 @@ public static void putCollectionToNestedList(Map if (map.containsKey(k1)) { map.get(k1).addAll(list); } else { - map.put(k1, TUtil.newList(list)); + List input = new ArrayList<>(); + input.addAll(list); + map.put(k1, input); } } @@ -194,7 +166,9 @@ public static void putToNestedMap(Map if (map.containsKey(k1)) { map.get(k1).put(k2, value); } else { - map.put(k1, TUtil.newLinkedHashMap(k2, value)); + HashMap newMap = new LinkedHashMap<>(); + newMap.put(k2, value); + map.put(k1, newMap); } } diff --git a/tajo-common/src/main/java/org/apache/tajo/util/graph/SimpleDirectedGraph.java b/tajo-common/src/main/java/org/apache/tajo/util/graph/SimpleDirectedGraph.java index c40338e0bb..b5e36e7ec3 100644 --- a/tajo-common/src/main/java/org/apache/tajo/util/graph/SimpleDirectedGraph.java +++ b/tajo-common/src/main/java/org/apache/tajo/util/graph/SimpleDirectedGraph.java @@ -33,9 +33,9 @@ */ public class SimpleDirectedGraph implements DirectedGraph { /** map: child -> parent */ - protected Map> directedEdges = TUtil.newLinkedHashMap(); + protected Map> directedEdges = new LinkedHashMap<>(); /** map: parent -> child */ - protected Map> reversedEdges = TUtil.newLinkedHashMap(); + protected Map> reversedEdges = new LinkedHashMap<>(); public void clear() { for (Map eachEdge : directedEdges.values()) { diff --git a/tajo-common/src/main/java/org/apache/tajo/validation/PathListValidator.java b/tajo-common/src/main/java/org/apache/tajo/validation/PathListValidator.java index a580cb5caa..88fdecd833 100644 --- a/tajo-common/src/main/java/org/apache/tajo/validation/PathListValidator.java +++ b/tajo-common/src/main/java/org/apache/tajo/validation/PathListValidator.java @@ -20,6 +20,7 @@ import org.apache.tajo.util.TUtil; +import java.util.ArrayList; import java.util.Collection; public class PathListValidator extends AbstractValidator { @@ -57,7 +58,7 @@ protected boolean validateInternal(T object) { @Override protected Collection getDependantValidators() { - return TUtil.newList(); + return new ArrayList<>(); } } diff --git a/tajo-common/src/test/java/org/apache/tajo/rule/TestRuleEngine.java b/tajo-common/src/test/java/org/apache/tajo/rule/TestRuleEngine.java index a4906984e0..1396108a7a 100644 --- a/tajo-common/src/test/java/org/apache/tajo/rule/TestRuleEngine.java +++ b/tajo-common/src/test/java/org/apache/tajo/rule/TestRuleEngine.java @@ -26,6 +26,7 @@ import java.lang.reflect.Method; import java.net.URL; import java.net.URLClassLoader; +import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.jar.Attributes; @@ -68,7 +69,9 @@ public static class TestRuleProvider1 implements SelfDiagnosisRuleProvider { @Override public List getDefinedRules() { - List ruleList = TUtil.newList(new TestRule1(), new TestRule2()); + List ruleList = new ArrayList<>(); + ruleList.add(new TestRule1()); + ruleList.add(new TestRule2()); return ruleList; } diff --git a/tajo-common/src/test/java/org/apache/tajo/rule/TestRuleSession.java b/tajo-common/src/test/java/org/apache/tajo/rule/TestRuleSession.java index 56919113e5..08d15ad7ad 100644 --- a/tajo-common/src/test/java/org/apache/tajo/rule/TestRuleSession.java +++ b/tajo-common/src/test/java/org/apache/tajo/rule/TestRuleSession.java @@ -26,6 +26,7 @@ import java.lang.reflect.Method; import java.net.URL; import java.net.URLClassLoader; +import java.util.ArrayList; import java.util.List; import java.util.jar.Attributes; import java.util.jar.JarEntry; @@ -69,7 +70,7 @@ public static class TestRuleSessionProvider implements SelfDiagnosisRuleProvider @Override public List getDefinedRules() { - List ruleList = TUtil.newList(); + List ruleList = new ArrayList<>(); ruleList.add(new TestRule1()); ruleList.add(new TestRule2()); ruleList.add(new TestRule3()); @@ -214,7 +215,7 @@ public static class TestRulePriorityProvider implements SelfDiagnosisRuleProvide @Override public List getDefinedRules() { - List ruleList = TUtil.newList(); + List ruleList = new ArrayList<>(); ruleList.add(new TestPriorityRule1()); ruleList.add(new TestPriorityRule2()); ruleList.add(new TestPriorityRule3()); @@ -320,7 +321,7 @@ public static class TestExecutionRuleProvider implements SelfDiagnosisRuleProvid @Override public List getDefinedRules() { - List ruleList = TUtil.newList(); + List ruleList = new ArrayList<>(); ruleList.add(new TestExecRule1()); ruleList.add(new TestExecRule2()); ruleList.add(new TestExecRule3()); diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/engine/planner/physical/TestPhysicalPlanner.java b/tajo-core-tests/src/test/java/org/apache/tajo/engine/planner/physical/TestPhysicalPlanner.java index 53fbf0ad9a..17eb06332c 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/engine/planner/physical/TestPhysicalPlanner.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/engine/planner/physical/TestPhysicalPlanner.java @@ -674,7 +674,9 @@ public final void testPartitionedStorePlan() throws IOException, TajoException { } assertEquals(numPartitions, fragments.size()); - Scanner scanner = new MergeScanner(conf, rootNode.getOutSchema(), outputMeta, TUtil.newList(fragments)); + List inputList = new ArrayList<>(); + inputList.addAll(fragments); + Scanner scanner = new MergeScanner(conf, rootNode.getOutSchema(), outputMeta, inputList); scanner.init(); Tuple tuple; @@ -745,7 +747,9 @@ public final void testPartitionedStorePlanWithMaxFileSize() throws IOException, assertEquals(expectedFileNum, fileStatuses.length); } TableMeta outputMeta = CatalogUtil.newTableMeta("TEXT"); - Scanner scanner = new MergeScanner(conf, rootNode.getOutSchema(), outputMeta, TUtil.newList(fragments)); + List inputList = new ArrayList<>(); + inputList.addAll(fragments); + Scanner scanner = new MergeScanner(conf, rootNode.getOutSchema(), outputMeta, inputList); scanner.init(); long rowNum = 0; @@ -809,7 +813,9 @@ public final void testPartitionedStorePlanWithEmptyGroupingSet() assertEquals(numPartitions, fragments.size()); - Scanner scanner = new MergeScanner(conf, rootNode.getOutSchema(), outputMeta, TUtil.newList(fragments)); + List inputList = new ArrayList<>(); + inputList.addAll(fragments); + Scanner scanner = new MergeScanner(conf, rootNode.getOutSchema(), outputMeta, inputList); scanner.init(); Tuple tuple; int i = 0; diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestGroupByQuery.java b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestGroupByQuery.java index cc9028bfbb..3d5cdb57ce 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestGroupByQuery.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestGroupByQuery.java @@ -58,7 +58,9 @@ public TestGroupByQuery(String groupByOption) throws Exception { @AfterClass public static void tearDown() throws Exception { - client.unsetSessionVariables(TUtil.newList(SessionVars.GROUPBY_MULTI_LEVEL_ENABLED.keyname())); + List listInput = new ArrayList<>(); + listInput.addAll(Arrays.asList(SessionVars.GROUPBY_MULTI_LEVEL_ENABLED.keyname())); + client.unsetSessionVariables(listInput); } @Parameters diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestHBaseTable.java b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestHBaseTable.java index edd6c7080d..0fb18fabf0 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestHBaseTable.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestHBaseTable.java @@ -1312,7 +1312,9 @@ public void testInsertIntoUsingPut() throws Exception { } finally { executeString("DROP TABLE hbase_mapped_table PURGE").close(); - client.unsetSessionVariables(TUtil.newList(HBaseStorageConstants.INSERT_PUT_MODE)); + List listInput = new ArrayList<>(); + listInput.addAll(Arrays.asList(HBaseStorageConstants.INSERT_PUT_MODE)); + client.unsetSessionVariables(listInput); if (scanner != null) { scanner.close(); diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java index da18b0af31..14ef87b398 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java @@ -23,6 +23,8 @@ import org.junit.Test; import java.sql.ResultSet; +import java.util.ArrayList; +import java.util.Arrays; import java.util.List; import static org.junit.Assert.assertEquals; @@ -32,7 +34,9 @@ public class TestSelectNestedRecord extends QueryTestCaseBase { @Test public final void testSelect0() throws Exception { List tables = executeDDL("sample1_ddl.sql", "sample1", "sample1"); - assertEquals(TUtil.newList("sample1"), tables); + List inputList = new ArrayList<>(); + inputList.addAll(Arrays.asList("sample1")); + assertEquals(inputList, tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -42,7 +46,9 @@ public final void testSelect0() throws Exception { @Test public final void testSelect1() throws Exception { List tables = executeDDL("sample1_ddl.sql", "sample1", "sample2"); - assertEquals(TUtil.newList("sample2"), tables); + List inputList = new ArrayList<>(); + inputList.addAll(Arrays.asList("sample2")); + assertEquals(inputList, tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -52,7 +58,9 @@ public final void testSelect1() throws Exception { @Test public final void testSelect2() throws Exception { List tables = executeDDL("tweets_ddl.sql", "tweets", "tweets"); - assertEquals(TUtil.newList("tweets"), tables); + List inputList = new ArrayList<>(); + inputList.addAll(Arrays.asList("tweets")); + assertEquals(inputList, tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -62,7 +70,9 @@ public final void testSelect2() throws Exception { @Test public final void testSelect3() throws Exception { List tables = executeDDL("sample2_ddl.sql", "sample2", "sample5"); - assertEquals(TUtil.newList("sample5"), tables); + List inputList = new ArrayList<>(); + inputList.addAll(Arrays.asList("sample5")); + assertEquals(inputList, tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -73,7 +83,9 @@ public final void testSelect3() throws Exception { public final void testTAJO_1610() throws Exception { executeString("CREATE DATABASE tweets").close(); List tables = executeDDL("tweets_ddl.sql", "tweets", "tweets.tweets"); - assertEquals(TUtil.newList("tweets.tweets"), tables); + List inputList = new ArrayList<>(); + inputList.addAll(Arrays.asList("tweets.tweets")); + assertEquals(inputList, tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -83,7 +95,9 @@ public final void testTAJO_1610() throws Exception { @Test public final void testNestedFieldAsGroupbyKey1() throws Exception { List tables = executeDDL("tweets_ddl.sql", "tweets", "tweets"); - assertEquals(TUtil.newList("tweets"), tables); + List inputList = new ArrayList<>(); + inputList.addAll(Arrays.asList("tweets")); + assertEquals(inputList, tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -93,7 +107,9 @@ public final void testNestedFieldAsGroupbyKey1() throws Exception { @Test public final void testNestedFieldAsJoinKey1() throws Exception { List tables = executeDDL("tweets_ddl.sql", "tweets", "tweets"); - assertEquals(TUtil.newList("tweets"), tables); + List inputList = new ArrayList<>(); + inputList.addAll(Arrays.asList("tweets")); + assertEquals(inputList, tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -104,7 +120,9 @@ public final void testNestedFieldAsJoinKey1() throws Exception { public final void testInsertType1() throws Exception { // all columns List tables = executeDDL("sample1_ddl.sql", "sample1", "sample3"); - assertEquals(TUtil.newList("sample3"), tables); + List listInput = new ArrayList<>(); + listInput.addAll(Arrays.asList("sample3")); + assertEquals(listInput, tables); executeString("CREATE TABLE clone (title TEXT, name RECORD (first_name TEXT, last_name TEXT)) USING JSON;").close(); @@ -118,7 +136,9 @@ public final void testInsertType1() throws Exception { public final void testInsertType2() throws Exception { // some columns List tables = executeDDL("sample1_ddl.sql", "sample1", "sample4"); - assertEquals(TUtil.newList("sample4"), tables); + List listInput = new ArrayList<>(); + listInput.addAll(Arrays.asList("sample4")); + assertEquals(listInput, tables); executeString("CREATE TABLE clone2 (title TEXT, name RECORD (first_name TEXT, last_name TEXT)) USING JSON;").close(); diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/ws/rs/resources/TestQueryResultResource.java b/tajo-core-tests/src/test/java/org/apache/tajo/ws/rs/resources/TestQueryResultResource.java index 26fa01196b..66bbf7003b 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/ws/rs/resources/TestQueryResultResource.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/ws/rs/resources/TestQueryResultResource.java @@ -52,6 +52,7 @@ import java.io.EOFException; import java.io.InputStream; import java.net.URI; +import java.util.ArrayList; import java.util.List; import static org.apache.tajo.exception.ErrorUtil.isOk; @@ -208,7 +209,7 @@ public void testGetQueryResultSetWithBinary() throws Exception { assertNotNull(queryResultSetInputStream); boolean isFinished = false; - List tupleList = TUtil.newList(); + List tupleList = new ArrayList<>(); RowStoreUtil.RowStoreDecoder decoder = RowStoreUtil.createDecoder(response.getSchema()); while (!isFinished) { try { @@ -274,7 +275,7 @@ public void testGetQueryResultSetWithDefaultCountWithBinary() throws Exception { assertNotNull(queryResultSetInputStream); boolean isFinished = false; - List tupleList = TUtil.newList(); + List tupleList = new ArrayList<>(); int receviedSize = 0; RowStoreUtil.RowStoreDecoder decoder = RowStoreUtil.createDecoder(response.getSchema()); while (!isFinished) { diff --git a/tajo-core/src/main/java/org/apache/tajo/engine/function/FunctionLoader.java b/tajo-core/src/main/java/org/apache/tajo/engine/function/FunctionLoader.java index 1fb5acf674..d5f5738455 100644 --- a/tajo-core/src/main/java/org/apache/tajo/engine/function/FunctionLoader.java +++ b/tajo-core/src/main/java/org/apache/tajo/engine/function/FunctionLoader.java @@ -108,7 +108,7 @@ public static List loadUserDefinedFunctions(TajoConf conf) continue; } - List filePaths = TUtil.newList(); + List filePaths = new ArrayList<>(); if (localFS.isDirectory(codePath)) { for (FileStatus file : localFS.listStatus(codePath, (Path path) -> path.getName().endsWith(PythonScriptEngine.FILE_EXTENSION))) { diff --git a/tajo-core/src/main/java/org/apache/tajo/engine/planner/PhysicalPlannerImpl.java b/tajo-core/src/main/java/org/apache/tajo/engine/planner/PhysicalPlannerImpl.java index c489bbba28..8bc935ba55 100644 --- a/tajo-core/src/main/java/org/apache/tajo/engine/planner/PhysicalPlannerImpl.java +++ b/tajo-core/src/main/java/org/apache/tajo/engine/planner/PhysicalPlannerImpl.java @@ -61,6 +61,7 @@ import java.io.IOException; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; import java.util.Stack; @@ -928,11 +929,11 @@ public PhysicalExec createScanPlan(TaskAttemptContext ctx, ScanNode scanNode, St if (broadcastFlag) { PartitionedTableScanNode partitionedTableScanNode = (PartitionedTableScanNode) scanNode; - List fileFragments = TUtil.newList(); + List fileFragments = new ArrayList<>(); FileTablespace space = (FileTablespace) TablespaceManager.get(scanNode.getTableDesc().getUri()); for (Path path : partitionedTableScanNode.getInputPaths()) { - fileFragments.addAll(TUtil.newList(space.split(scanNode.getCanonicalName(), path))); + fileFragments.addAll(Arrays.asList(space.split(scanNode.getCanonicalName(), path))); } FragmentProto[] fragments = diff --git a/tajo-core/src/main/java/org/apache/tajo/engine/planner/enforce/Enforcer.java b/tajo-core/src/main/java/org/apache/tajo/engine/planner/enforce/Enforcer.java index 7126b51e88..66a1791945 100644 --- a/tajo-core/src/main/java/org/apache/tajo/engine/planner/enforce/Enforcer.java +++ b/tajo-core/src/main/java/org/apache/tajo/engine/planner/enforce/Enforcer.java @@ -24,6 +24,7 @@ import org.apache.tajo.common.ProtoObject; import org.apache.tajo.util.TUtil; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -212,7 +213,7 @@ public List getProperties() { if (proto != null) { return proto.getPropertiesList(); } else { - List list = TUtil.newList(); + List list = new ArrayList<>(); for (List propertyList : properties.values()) { list.addAll(propertyList); } diff --git a/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/rewriter/BaseGlobalPlanRewriteRuleProvider.java b/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/rewriter/BaseGlobalPlanRewriteRuleProvider.java index 1ae405632d..f829ad797b 100644 --- a/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/rewriter/BaseGlobalPlanRewriteRuleProvider.java +++ b/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/rewriter/BaseGlobalPlanRewriteRuleProvider.java @@ -23,12 +23,13 @@ import org.apache.tajo.engine.planner.global.rewriter.rules.BroadcastJoinRule; import org.apache.tajo.util.TUtil; +import java.util.ArrayList; import java.util.Collection; import java.util.List; @SuppressWarnings("unused") public class BaseGlobalPlanRewriteRuleProvider extends GlobalPlanRewriteRuleProvider { - private static final List> EMPTY_RULES = TUtil.newList(); + private static final List> EMPTY_RULES = new ArrayList<>(); public BaseGlobalPlanRewriteRuleProvider(TajoConf conf) { super(conf); diff --git a/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/rewriter/rules/BroadcastJoinRule.java b/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/rewriter/rules/BroadcastJoinRule.java index 7bb2c30921..a4261b246e 100644 --- a/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/rewriter/rules/BroadcastJoinRule.java +++ b/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/rewriter/rules/BroadcastJoinRule.java @@ -143,7 +143,8 @@ public void visit(Object context, Stack stack, ExecutionBlockI // When every child is a broadcast candidate, enforce non-broadcast for the largest relation for the join to be // computed at the node who stores such largest relation. if (isFullyBroadcastable(current)) { - List broadcastCandidates = TUtil.newList(current.getBroadcastRelations()); + List broadcastCandidates = new ArrayList<>(); + broadcastCandidates.addAll(current.getBroadcastRelations()); Collections.sort(broadcastCandidates, relSizeComparator); current.removeBroadcastRelation(broadcastCandidates.remove(broadcastCandidates.size()-1)); @@ -244,7 +245,8 @@ private void visitNonLeafNode(Context context, ExecutionBlock current) { context.estimatedEbOutputSize.put(current.getId(), outputVolume); } } else { - List relations = TUtil.newList(current.getBroadcastRelations()); + List relations = new ArrayList<>(); + relations.addAll(current.getBroadcastRelations()); for (ScanNode eachRelation : relations) { current.removeBroadcastRelation(eachRelation); } @@ -387,7 +389,8 @@ private long estimateOutputVolumeInternal(LogicalNode node) throws TajoInternalE * @param block */ private void checkTotalSizeOfBroadcastableRelations(Context context, ExecutionBlock block) { - List broadcastCandidates = TUtil.newList(block.getBroadcastRelations()); + List broadcastCandidates = new ArrayList<>(); + broadcastCandidates.addAll(block.getBroadcastRelations()); Collections.sort(broadcastCandidates, relSizeComparator); // Enforce broadcast for candidates in ascending order of relation size @@ -449,7 +452,7 @@ private ExecutionBlock mergeTwoPhaseJoinIfPossible(MasterPlan plan, ExecutionBlo private void addUnionNodeIfNecessary(Map unionScanMap, MasterPlan plan, ExecutionBlock child, ExecutionBlock current) { if (unionScanMap != null) { - List unionScans = TUtil.newList(); + List unionScans = new ArrayList<>(); ExecutionBlockId representativeId = null; if (unionScanMap.containsKey(child.getId())) { representativeId = unionScanMap.get(child.getId()); diff --git a/tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/DistinctGroupbyHashAggregationExec.java b/tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/DistinctGroupbyHashAggregationExec.java index 777dcf57a2..39eb5b0a7c 100644 --- a/tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/DistinctGroupbyHashAggregationExec.java +++ b/tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/DistinctGroupbyHashAggregationExec.java @@ -72,7 +72,7 @@ public DistinctGroupbyHashAggregationExec(TaskAttemptContext context, DistinctGr public void init() throws IOException { super.init(); - distinctGroupingKeyColumnSet = TUtil.newList(); + distinctGroupingKeyColumnSet = new ArrayList<>(); for (Column col : plan.getGroupingColumns()) { if (!distinctGroupingKeyColumnSet.contains(col)) { distinctGroupingKeyColumnSet.add(col); diff --git a/tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/ExternalSortExec.java b/tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/ExternalSortExec.java index 69631b5215..4d2f34bc07 100644 --- a/tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/ExternalSortExec.java +++ b/tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/ExternalSortExec.java @@ -54,6 +54,7 @@ import java.io.File; import java.io.IOException; +import java.util.ArrayList; import java.util.Comparator; import java.util.Iterator; import java.util.List; @@ -139,7 +140,7 @@ public ExternalSortExec(final TaskAttemptContext context,final SortNode plan, fi final CatalogProtos.FragmentProto[] fragments) throws PhysicalPlanningException { this(context, plan); - mergedInputFragments = TUtil.newList(); + mergedInputFragments = new ArrayList<>(); for (CatalogProtos.FragmentProto proto : fragments) { FileFragment fragment = FragmentConvertor.convert(FileFragment.class, proto); mergedInputFragments.add(new Chunk(inSchema, fragment, scanNode.getTableDesc().getMeta())); @@ -212,7 +213,7 @@ private Chunk sortAndStoreChunk(int chunkId, UnSafeTupleList tupleBlock) */ private List sortAndStoreAllChunks() throws IOException { Tuple tuple; - List chunkPaths = TUtil.newList(); + List chunkPaths = new ArrayList<>(); int chunkId = 0; long runStartTime = System.currentTimeMillis(); @@ -333,8 +334,9 @@ private int calculateFanout(int remainInputChunks, int inputNum, int outputNum, private Scanner externalMergeAndSort(List chunks) throws Exception { int level = 0; - final List inputFiles = TUtil.newList(chunks); - final List outputFiles = TUtil.newList(); + final List inputFiles = new ArrayList<>(); + inputFiles.addAll(chunks); + final List outputFiles = new ArrayList<>(); int remainRun = inputFiles.size(); int chunksSize = chunks.size(); @@ -347,9 +349,9 @@ private Scanner externalMergeAndSort(List chunks) throws Exception { int remainInputRuns = inputFiles.size(); int outChunkId = 0; int outputFileNum = 0; - List> futures = TUtil.newList(); + List> futures = new ArrayList<>(); // the number of files being merged in threads. - List numberOfMergingFiles = TUtil.newList(); + List numberOfMergingFiles = new ArrayList<>(); for (int startIdx = 0; startIdx < inputFiles.size();) { @@ -376,7 +378,7 @@ private Scanner externalMergeAndSort(List chunks) throws Exception { info(LOG, "Unbalanced merge possibility detected: number of remain input (" + remainInputRuns + ") and output files (" + outputFileNum + ") <= " + defaultFanout); - List switched = TUtil.newList(); + List switched = new ArrayList<>(); // switch the remain inputs to the next outputs for (int j = startIdx; j < inputFiles.size(); j++) { switched.add(inputFiles.get(j)); diff --git a/tajo-core/src/main/java/org/apache/tajo/ha/HdfsServiceTracker.java b/tajo-core/src/main/java/org/apache/tajo/ha/HdfsServiceTracker.java index 4c7732f2b6..a6682fe7b5 100644 --- a/tajo-core/src/main/java/org/apache/tajo/ha/HdfsServiceTracker.java +++ b/tajo-core/src/main/java/org/apache/tajo/ha/HdfsServiceTracker.java @@ -38,6 +38,7 @@ import java.io.IOException; import java.net.InetSocketAddress; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; /** @@ -302,7 +303,7 @@ public boolean isActiveMaster() { @Override public List getMasters() throws IOException { - List list = TUtil.newList(); + List list = new ArrayList<>(); FileStatus[] files = fs.listStatus(activePath); for(FileStatus status : files) { @@ -496,12 +497,12 @@ private synchronized List getAddressElements() throws ServiceTrackerExce throw new ServiceTrackerException("Active master entry must be a file, but it is a directory."); } - List addressElements = TUtil.newList(); + List addressElements = new ArrayList<>(); FSDataInputStream stream = fs.open(activeMasterEntry); String data = stream.readUTF(); stream.close(); - addressElements.addAll(TUtil.newList(data.split("_"))); // Add remains entries to elements + addressElements.addAll(Arrays.asList(data.split("_"))); // Add remains entries to elements // ensure the number of entries Preconditions.checkState(addressElements.size() == 5, "Fewer service addresses than necessary."); diff --git a/tajo-core/src/main/java/org/apache/tajo/master/exec/DDLExecutor.java b/tajo-core/src/main/java/org/apache/tajo/master/exec/DDLExecutor.java index da19625341..898d351ee2 100644 --- a/tajo-core/src/main/java/org/apache/tajo/master/exec/DDLExecutor.java +++ b/tajo-core/src/main/java/org/apache/tajo/master/exec/DDLExecutor.java @@ -612,7 +612,7 @@ public void repairPartition(TajoMaster.MasterContext context, final QueryContext // Find missing partitions from filesystem List existingPartitions = catalog.getPartitionsOfTable(databaseName, simpleTableName); - List existingPartitionNames = TUtil.newList(); + List existingPartitionNames = new ArrayList<>(); Path existingPartitionPath = null; for(PartitionDescProto existingPartition : existingPartitions) { @@ -624,7 +624,7 @@ public void repairPartition(TajoMaster.MasterContext context, final QueryContext } // Find missing partitions from CatalogStore - List targetPartitions = TUtil.newList(); + List targetPartitions = new ArrayList<>(); for(Path filteredPath : filteredPaths) { int startIdx = filteredPath.toString().indexOf(PartitionedTableRewriter.getColumnPartitionPathPrefix diff --git a/tajo-core/src/main/java/org/apache/tajo/master/exec/NonForwardQueryResultSystemScanner.java b/tajo-core/src/main/java/org/apache/tajo/master/exec/NonForwardQueryResultSystemScanner.java index 7f505a6dea..c3387a8960 100644 --- a/tajo-core/src/main/java/org/apache/tajo/master/exec/NonForwardQueryResultSystemScanner.java +++ b/tajo-core/src/main/java/org/apache/tajo/master/exec/NonForwardQueryResultSystemScanner.java @@ -767,7 +767,7 @@ public SystemPhysicalExec(TaskAttemptContext context, ScanNode scanNode) { this.qual.bind(null, inSchema); } - cachedData = TUtil.newList(); + cachedData = new ArrayList<>(); currentRow = 0; isClosed = false; diff --git a/tajo-core/src/main/java/org/apache/tajo/querymaster/Query.java b/tajo-core/src/main/java/org/apache/tajo/querymaster/Query.java index 0699fc75bf..a39e943118 100644 --- a/tajo-core/src/main/java/org/apache/tajo/querymaster/Query.java +++ b/tajo-core/src/main/java/org/apache/tajo/querymaster/Query.java @@ -540,7 +540,7 @@ private QueryState finalizeQuery(Query query, QueryCompletedEvent event) { private List getPartitionsWithContentsSummary(TajoConf conf, Path outputDir, List partitions) throws IOException { - List finalPartitions = TUtil.newList(); + List finalPartitions = new ArrayList<>(); FileSystem fileSystem = outputDir.getFileSystem(conf); for (PartitionDescProto partition : partitions) { @@ -560,7 +560,7 @@ void execute(QueryMaster.QueryMasterContext context, QueryContext queryContext, } private static class QueryHookExecutor { - private List hookList = TUtil.newList(); + private List hookList = new ArrayList<>(); private QueryMaster.QueryMasterContext context; public QueryHookExecutor(QueryMaster.QueryMasterContext context) { diff --git a/tajo-core/src/main/java/org/apache/tajo/querymaster/Repartitioner.java b/tajo-core/src/main/java/org/apache/tajo/querymaster/Repartitioner.java index bd8311f594..8cb3013445 100644 --- a/tajo-core/src/main/java/org/apache/tajo/querymaster/Repartitioner.java +++ b/tajo-core/src/main/java/org/apache/tajo/querymaster/Repartitioner.java @@ -321,12 +321,16 @@ private static void scheduleSymmetricRepartitionJoin(QueryMasterTask.QueryMaster if (tbNameToInterm.containsKey(scanEbId)) { tbNameToInterm.get(scanEbId).add(intermediateEntry); } else { - tbNameToInterm.put(scanEbId, TUtil.newList(intermediateEntry)); + List listInput = new ArrayList<>(); + listInput.addAll(Arrays.asList(intermediateEntry)); + tbNameToInterm.put(scanEbId, listInput); } } else { Map> tbNameToInterm = new HashMap<>(); - tbNameToInterm.put(scanEbId, TUtil.newList(intermediateEntry)); + List inputList = new ArrayList<>(); + inputList.addAll(Arrays.asList(intermediateEntry)); + tbNameToInterm.put(scanEbId, inputList); hashEntries.put(intermediateEntry.getPartId(), tbNameToInterm); } } @@ -999,7 +1003,8 @@ public static void scheduleScatteredHashShuffleFetches(TaskSchedulerContext sche int partId = eachInterm.getPartId(); List partitionInterms = partitionIntermMap.get(partId); if (partitionInterms == null) { - partitionInterms = TUtil.newList(eachInterm); + partitionInterms = new ArrayList<>(); + partitionInterms.addAll(Arrays.asList(eachInterm)); partitionIntermMap.put(partId, partitionInterms); } else { partitionInterms.add(eachInterm); @@ -1077,8 +1082,10 @@ public static List> splitOrMergeIntermediates(@NotNull String fetchListForSingleTask = new ArrayList<>(); fetchListVolume = 0; } + List listInput = new ArrayList<>(); + listInput.addAll(Arrays.asList(currentInterm)); FetchImpl fetch = new FetchImpl(fetchName, currentInterm.getPullHost(), SCATTERED_HASH_SHUFFLE, - ebId, currentInterm.getPartId(), TUtil.newList(currentInterm)); + ebId, currentInterm.getPartId(), listInput); fetch.setOffset(eachSplit.getFirst()); fetch.setLength(eachSplit.getSecond()); fetchListForSingleTask.add(fetch.getProto()); @@ -1219,7 +1226,9 @@ public static Map> hashByKey(List(); + listInput.addAll(Arrays.asList(entry)); + hashed.put(entry.getPartId(), listInput); } } @@ -1235,7 +1244,9 @@ public static Map> hashByHost(List(); + listInput.addAll(Arrays.asList(entry)); + hashed.put(host, listInput); } } diff --git a/tajo-core/src/main/java/org/apache/tajo/worker/TaskAttemptContext.java b/tajo-core/src/main/java/org/apache/tajo/worker/TaskAttemptContext.java index 485fa03379..0fff8650c0 100644 --- a/tajo-core/src/main/java/org/apache/tajo/worker/TaskAttemptContext.java +++ b/tajo-core/src/main/java/org/apache/tajo/worker/TaskAttemptContext.java @@ -120,7 +120,7 @@ public TaskAttemptContext(QueryContext queryContext, final ExecutionBlockContext this.partitionOutputVolume = Maps.newHashMap(); - this.partitions = TUtil.newList(); + this.partitions = new ArrayList<>(); } @VisibleForTesting @@ -292,7 +292,7 @@ public void addFragments(String tableId, FragmentProto[] fragments) { } private List fragmentToPath(List tableFragments) { - List list = TUtil.newList(); + List list = new ArrayList<>(); for (FragmentProto proto : tableFragments) { FileFragment fragment = FragmentConvertor.convert(FileFragment.class, proto); diff --git a/tajo-core/src/main/resources/webapps/admin/cluster.jsp b/tajo-core/src/main/resources/webapps/admin/cluster.jsp index fd942bdda3..bc81ff971d 100644 --- a/tajo-core/src/main/resources/webapps/admin/cluster.jsp +++ b/tajo-core/src/main/resources/webapps/admin/cluster.jsp @@ -72,7 +72,7 @@ String deadQueryMastersHtml = deadQueryMasters.isEmpty() ? "0": "" + deadQueryMasters.size() + ""; ServiceTracker haService = master.getContext().getHAService(); - List masters = TUtil.newList(); + List masters = new ArrayList<>(); String activeLabel = ""; if (haService != null) { diff --git a/tajo-core/src/main/resources/webapps/admin/index.jsp b/tajo-core/src/main/resources/webapps/admin/index.jsp index 96facc541a..b0f59f7fdd 100644 --- a/tajo-core/src/main/resources/webapps/admin/index.jsp +++ b/tajo-core/src/main/resources/webapps/admin/index.jsp @@ -35,6 +35,7 @@ <%@ page import="java.net.InetSocketAddress" %> <%@ page import="java.util.Date" %> <%@ page import="java.util.Map" %> +<%@ page import="java.util.ArrayList" %> <% TajoMaster master = (TajoMaster) StaticHttpServer.getInstance().getAttribute("tajo.info.server.object"); @@ -80,7 +81,7 @@ String numDeadQueryMastersHtml = numDeadQueryMasters == 0 ? "0" : "" + numDeadQueryMasters + ""; ServiceTracker haService = master.getContext().getHAService(); - List masters = TUtil.newList(); + List masters = new ArrayList<>(); String activeLabel = ""; if (haService != null) { diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/ExprAnnotator.java b/tajo-plan/src/main/java/org/apache/tajo/plan/ExprAnnotator.java index 560f6ac539..6a20de08f6 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/ExprAnnotator.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/ExprAnnotator.java @@ -45,9 +45,7 @@ import org.apache.tajo.util.datetime.DateTimeUtil; import org.apache.tajo.util.datetime.TimeMeta; -import java.util.Set; -import java.util.Stack; -import java.util.TimeZone; +import java.util.*; import static org.apache.tajo.algebra.WindowSpec.WindowFrameEndBoundType; import static org.apache.tajo.algebra.WindowSpec.WindowFrameStartBoundType; @@ -596,7 +594,9 @@ public EvalNode visitFunction(Context ctx, Stack stack, FunctionExpr expr) FunctionDesc funcDesc = catalog.getFunction(expr.getSignature(), paramTypes); // trying the implicit type conversion between actual parameter types and the definition types. - if (CatalogUtil.checkIfVariableLengthParamDefinition(TUtil.newList(funcDesc.getParamTypes()))) { + List inputList = new ArrayList<>(); + inputList.addAll(Arrays.asList(funcDesc.getParamTypes())); + if (CatalogUtil.checkIfVariableLengthParamDefinition(inputList)) { DataType lastDataType = funcDesc.getParamTypes()[0]; for (int i = 0; i < givenArgs.length; i++) { if (i < (funcDesc.getParamTypes().length - 1)) { // variable length diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalOptimizer.java b/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalOptimizer.java index e9e6ab27f7..73d031053c 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalOptimizer.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalOptimizer.java @@ -260,7 +260,7 @@ public LogicalNode visitFilter(JoinGraphContext context, LogicalPlan plan, Logic SelectionNode node, Stack stack) throws TajoException { // all join predicate candidates must be collected before building the join tree except non-equality conditions // TODO: non-equality conditions should also be considered as join conditions after TAJO-1554 - List candidateJoinQuals = TUtil.newList(); + List candidateJoinQuals = new ArrayList<>(); for (EvalNode eachEval : AlgebraicUtil.toConjunctiveNormalFormArray(node.getQual())) { if (EvalTreeUtil.isJoinQual(eachEval, false)) { candidateJoinQuals.add(eachEval); diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlan.java b/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlan.java index 86101944d4..f321c76c83 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlan.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlan.java @@ -288,7 +288,7 @@ public QueryBlock getParentBlock(QueryBlock block) { } public List getChildBlocks(QueryBlock block) { - List childBlocks = TUtil.newList(); + List childBlocks = new ArrayList<>(); for (String blockName : queryBlockGraph.getChilds(block.getName())) { childBlocks.add(queryBlocks.get(blockName)); } @@ -431,7 +431,7 @@ public class QueryBlock { private final Map> relationAliasMap = new HashMap<>(); private final Map columnAliasMap = new HashMap<>(); private final Map> operatorToExprMap = new HashMap<>(); - private final List relationList = TUtil.newList(); + private final List relationList = new ArrayList<>(); private final Map> relNodePidAccessPathMap = new HashMap<>(); private boolean hasWindowFunction = false; private final Map constantPoolByRef = Maps.newHashMap(); diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlanner.java b/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlanner.java index 6c38c02cf7..86af6cb662 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlanner.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlanner.java @@ -91,7 +91,7 @@ public static class PlanContext { QueryBlock queryBlock; EvalTreeOptimizer evalOptimizer; TimeZone timeZone; - List unplannedExprs = TUtil.newList(); + List unplannedExprs = new ArrayList<>(); boolean debugOrUnitTests; Integer noNameSubqueryId = 0; @@ -370,7 +370,7 @@ private void insertDistinctOperator(PlanContext context, ProjectionNode projecti String [] referenceNames = new String[finalTargetNum]; ExprNormalizedResult[] normalizedExprList = new ExprNormalizedResult[finalTargetNum]; - List windowSpecReferencesList = TUtil.newList(); + List windowSpecReferencesList = new ArrayList<>(); List targetsIds = normalize(context, projection, normalizedExprList, new Matcher() { @Override @@ -1030,8 +1030,8 @@ public LogicalNode visitGroupBy(PlanContext context, Stack stack, Aggregat //////////////////////////////////////////////////////// // create EvalNodes and check if each EvalNode can be evaluated here. - List aggEvalNames = TUtil.newList(); - List aggEvalNodes = TUtil.newList(); + List aggEvalNames = new ArrayList<>(); + List aggEvalNodes = new ArrayList<>(); boolean includeDistinctFunction = false; for (Iterator iterator = block.namedExprsMgr.getIteratorForUnevaluatedExprs(); iterator.hasNext();) { NamedExpr namedExpr = iterator.next(); @@ -1191,7 +1191,8 @@ public LogicalNode visitJoin(PlanContext context, Stack stack, Join join) // In this case, this join is the top most one within a query block. boolean isTopMostJoin = stack.isEmpty() ? true : stack.peek().getType() != OpType.Join; List newlyEvaluatedExprs = getNewlyEvaluatedExprsForJoin(context, joinNode, isTopMostJoin); - List targets = TUtil.newList(PlannerUtil.schemaToTargets(merged)); + List targets = new ArrayList<>(); + targets.addAll(PlannerUtil.schemaToTargets(merged)); for (String newAddedExpr : newlyEvaluatedExprs) { targets.add(block.namedExprsMgr.getTarget(newAddedExpr, true)); @@ -1215,7 +1216,7 @@ private List getNewlyEvaluatedExprsForJoin(PlanContext context, JoinNode QueryBlock block = context.queryBlock; EvalNode evalNode; - List newlyEvaluatedExprs = TUtil.newList(); + List newlyEvaluatedExprs = new ArrayList<>(); for (Iterator it = block.namedExprsMgr.getIteratorForUnevaluatedExprs(); it.hasNext();) { NamedExpr namedExpr = it.next(); try { @@ -1286,7 +1287,7 @@ private LogicalNode createCartesianProduct(PlanContext context, LogicalNode left block.addJoinType(join.getJoinType()); EvalNode evalNode; - List newlyEvaluatedExprs = TUtil.newList(); + List newlyEvaluatedExprs = new ArrayList<>(); for (Iterator it = block.namedExprsMgr.getIteratorForUnevaluatedExprs(); it.hasNext();) { NamedExpr namedExpr = it.next(); try { @@ -1299,7 +1300,8 @@ private LogicalNode createCartesianProduct(PlanContext context, LogicalNode left } catch (UndefinedColumnException ve) {} } - List targets = TUtil.newList(PlannerUtil.schemaToTargets(merged)); + List targets = new ArrayList<>(); + targets.addAll(PlannerUtil.schemaToTargets(merged)); for (String newAddedExpr : newlyEvaluatedExprs) { targets.add(block.namedExprsMgr.getTarget(newAddedExpr, true)); } @@ -1730,7 +1732,7 @@ private void buildProjectedInsert(PlanContext context, InsertNode insertNode) { // Modifying projected columns by adding NULL constants // It is because that table appender does not support target columns to be written. - List targets = TUtil.newList(); + List targets = new ArrayList<>(); for (Column column : tableSchema.getAllColumns()) { int idxInProjectionNode = targetColumns.getIndex(column); diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/NamedExprsManager.java b/tajo-plan/src/main/java/org/apache/tajo/plan/NamedExprsManager.java index 3ca2fe517f..6ad9d7068f 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/NamedExprsManager.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/NamedExprsManager.java @@ -349,7 +349,7 @@ public class UnevaluatedIterator implements Iterator { private final Iterator iterator; public UnevaluatedIterator() { - List unEvaluatedList = TUtil.newList(); + List unEvaluatedList = new ArrayList<>(); for (Integer refId: idToNamesMap.keySet()) { String name = idToNamesMap.get(refId).get(0); if (!isEvaluated(name)) { diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/expr/AlgebraicUtil.java b/tajo-plan/src/main/java/org/apache/tajo/plan/expr/AlgebraicUtil.java index 55e439eba4..ddc694bdfb 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/expr/AlgebraicUtil.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/expr/AlgebraicUtil.java @@ -543,7 +543,7 @@ public static T findMostBottomExpr(Expr expr, OpType type) thro * @return An array of CNF-formed algebra expressions */ public static Expr[] toConjunctiveNormalFormArray(Expr expr) { - List list = TUtil.newList(); + List list = new ArrayList<>(); toConjunctiveNormalFormArrayRecursive(expr, list); return list.toArray(new Expr[list.size()]); } @@ -584,7 +584,7 @@ public static Expr[] getRearrangedCNFExpressions(String tableName, Column target; for (int i = 0; i < partitionColumns.size(); i++) { - List accumulatedFilters = TUtil.newList(); + List accumulatedFilters = new ArrayList<>(); target = new Column(partitionColumns.get(i)); ColumnReferenceExpr columnReference = new ColumnReferenceExpr(tableName, target.getSimpleName()); diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/expr/EvalTreeUtil.java b/tajo-plan/src/main/java/org/apache/tajo/plan/expr/EvalTreeUtil.java index 5169136132..b2a20f5aa1 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/expr/EvalTreeUtil.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/expr/EvalTreeUtil.java @@ -523,7 +523,7 @@ public static Collection findOuterJoinSensitiveEvals(Eva public static class EvalFinder extends BasicEvalNodeVisitor { private EvalType targetType; - List evalNodes = TUtil.newList(); + List evalNodes = new ArrayList<>(); public EvalFinder(EvalType targetType) { this.targetType = targetType; @@ -546,7 +546,7 @@ public List getEvalNodes() { } public static class OuterJoinSensitiveEvalFinder extends BasicEvalNodeVisitor { - private List evalNodes = TUtil.newList(); + private List evalNodes = new ArrayList<>(); @Override public Object visit(Object context, EvalNode evalNode, Stack stack) { diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/function/python/PythonScriptEngine.java b/tajo-plan/src/main/java/org/apache/tajo/plan/function/python/PythonScriptEngine.java index 19a4ac2338..d1f6b2f977 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/function/python/PythonScriptEngine.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/function/python/PythonScriptEngine.java @@ -45,6 +45,7 @@ import java.io.*; import java.net.URI; import java.nio.charset.Charset; +import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Set; @@ -173,7 +174,7 @@ public ScalarFuncInfo(String[] quotedSchemaStrings, String funcName, int paramNu // TODO: python parser must be improved. private static List getFunctions(InputStream is) throws IOException { - List functions = TUtil.newList(); + List functions = new ArrayList<>(); InputStreamReader in = new InputStreamReader(is, Charset.defaultCharset()); BufferedReader br = new BufferedReader(in); String line = br.readLine(); diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/function/stream/StreamingUtil.java b/tajo-plan/src/main/java/org/apache/tajo/plan/function/stream/StreamingUtil.java index 46558c1fa8..6683ec099f 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/function/stream/StreamingUtil.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/function/stream/StreamingUtil.java @@ -23,6 +23,7 @@ import org.apache.tajo.util.TUtil; import java.io.File; +import java.util.ArrayList; import java.util.List; import java.util.Map; @@ -41,7 +42,7 @@ public class StreamingUtil { */ public static ProcessBuilder createProcess(String[] argv) { // Set the actual command to run with 'bash -c exec ...' - List cmdArgs = TUtil.newList(); + List cmdArgs = new ArrayList<>(); StringBuffer argBuffer = new StringBuffer(); for (String arg : argv) { diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/nameresolver/NameResolver.java b/tajo-plan/src/main/java/org/apache/tajo/plan/nameresolver/NameResolver.java index c5dd5772fe..7b55b5db56 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/nameresolver/NameResolver.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/nameresolver/NameResolver.java @@ -92,7 +92,7 @@ abstract Column resolve(LogicalPlan plan, LogicalPlan.QueryBlock block, ColumnRe public static RelationNode lookupTable(LogicalPlan.QueryBlock block, String tableName) throws AmbiguousTableException { - List found = TUtil.newList(); + List found = new ArrayList<>(); for (RelationNode relation : block.getRelations()) { @@ -245,7 +245,7 @@ static Column lookupColumnFromAllRelsInBlock(LogicalPlan.QueryBlock block, String columnName, boolean includeSelfDescTable) throws AmbiguousColumnException { Preconditions.checkArgument(CatalogUtil.isSimpleIdentifier(columnName)); - List candidates = TUtil.newList(); + List candidates = new ArrayList<>(); for (RelationNode rel : block.getRelations()) { if (rel.isNameResolveBase()) { @@ -260,7 +260,7 @@ static Column lookupColumnFromAllRelsInBlock(LogicalPlan.QueryBlock block, return ensureUniqueColumn(candidates); } else { if (includeSelfDescTable) { - List candidateRels = TUtil.newList(); + List candidateRels = new ArrayList<>(); for (RelationNode rel : block.getRelations()) { if (describeSchemaByItself(rel)) { candidateRels.add(rel); diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/nameresolver/ResolverByLegacy.java b/tajo-plan/src/main/java/org/apache/tajo/plan/nameresolver/ResolverByLegacy.java index 94e38be557..8c366e54ee 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/nameresolver/ResolverByLegacy.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/nameresolver/ResolverByLegacy.java @@ -32,6 +32,7 @@ import org.apache.tajo.util.Pair; import org.apache.tajo.util.TUtil; +import java.util.ArrayList; import java.util.List; public class ResolverByLegacy extends NameResolver { @@ -85,7 +86,7 @@ private static Column resolveColumnWithQualifier(LogicalPlan plan, LogicalPlan.Q if (currentNode != null && !currentNodeSchema.contains(found) && currentNode.getType() != NodeType.TABLE_SUBQUERY) { - List candidates = TUtil.newList(); + List candidates = new ArrayList<>(); if (block.getNamedExprsManager().isAliased(qualifiedName)) { String alias = block.getNamedExprsManager().getAlias(qualifiedName); found = resolve(plan, block, new ColumnReferenceExpr(alias), NameResolvingMode.LEGACY, includeSeflDescTable); diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/BaseLogicalPlanPreprocessPhaseProvider.java b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/BaseLogicalPlanPreprocessPhaseProvider.java index 3f64ae6b31..a029167668 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/BaseLogicalPlanPreprocessPhaseProvider.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/BaseLogicalPlanPreprocessPhaseProvider.java @@ -20,16 +20,16 @@ import org.apache.tajo.util.TUtil; +import java.util.ArrayList; import java.util.Collection; import java.util.List; public class BaseLogicalPlanPreprocessPhaseProvider extends LogicalPlanPreprocessPhaseProvider { @Override public Collection> getPhases() { - List phases = TUtil.newList( - BaseSchemaBuildPhase.class, - SelfDescSchemaBuildPhase.class - ); + List phases = new ArrayList<>(); + phases.add(BaseSchemaBuildPhase.class); + phases.add(SelfDescSchemaBuildPhase.class); return phases; } } diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/BaseLogicalPlanRewriteRuleProvider.java b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/BaseLogicalPlanRewriteRuleProvider.java index 3776f62e45..90e4c02eef 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/BaseLogicalPlanRewriteRuleProvider.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/BaseLogicalPlanRewriteRuleProvider.java @@ -22,6 +22,7 @@ import org.apache.tajo.plan.rewrite.rules.*; import org.apache.tajo.util.TUtil; +import java.util.ArrayList; import java.util.Collection; import java.util.List; @@ -37,7 +38,7 @@ public BaseLogicalPlanRewriteRuleProvider(TajoConf conf) { @Override public Collection> getPreRules() { - List> rules = TUtil.newList(); + List> rules = new ArrayList<>(); rules.add(CommonConditionReduceRule.class); // In-subquery rewrite phase must be executed before the filter push down phase. @@ -55,11 +56,10 @@ public Collection> getPreRules() { @Override public Collection> getPostRules() { - List> rules = TUtil.newList( - ProjectionPushDownRule.class, - PartitionedTableRewriter.class, - AccessPathRewriter.class - ); + List> rules = new ArrayList<>(); + rules.add(ProjectionPushDownRule.class); + rules.add(PartitionedTableRewriter.class); + rules.add(AccessPathRewriter.class); return rules; } } diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/BaseSchemaBuildPhase.java b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/BaseSchemaBuildPhase.java index a1306ad364..572ce503d6 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/BaseSchemaBuildPhase.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/BaseSchemaBuildPhase.java @@ -149,7 +149,7 @@ public static Column[] getColumns(LogicalPlanner.PlanContext ctx, QualifiedAster // columns of every relation should be resolved. Iterator iterator = block.getRelations().iterator(); Schema schema; - List resolvedColumns = TUtil.newList(); + List resolvedColumns = new ArrayList<>(); while (iterator.hasNext()) { relationOp = iterator.next(); @@ -187,7 +187,7 @@ private static List resolveAsterisk(LogicalPlanner.PlanContext ctx, Q private static List voidResolveAsteriskNamedExpr(LogicalPlanner.PlanContext context, List namedExprs) throws TajoException { - List rewrittenTargets = TUtil.newList(); + List rewrittenTargets = new ArrayList<>(); for (NamedExpr originTarget : namedExprs) { if (originTarget.getExpr().getType() == OpType.Asterisk) { // rewrite targets diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/FilterPushDownRule.java b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/FilterPushDownRule.java index 29780d42d6..7187fdc96a 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/FilterPushDownRule.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/FilterPushDownRule.java @@ -74,7 +74,7 @@ public void addFiltersTobePushed(Collection workingEvals) { public void setToOrigin(Map evalMap) { //evalMap: copy -> origin - List origins = TUtil.newList(); + List origins = new ArrayList<>(); for (EvalNode eval : pushingDownFilters) { EvalNode origin = evalMap.get(eval); if (origin != null) { @@ -188,7 +188,7 @@ public LogicalNode visitJoin(FilterPushDownContext context, LogicalPlan plan, Lo LogicalNode left = joinNode.getLeftChild(); LogicalNode right = joinNode.getRightChild(); - List notMatched = TUtil.newList(); + List notMatched = new ArrayList<>(); // Join's input schema = right child output columns + left child output columns Map transformedMap = findCanPushdownAndTransform(context, block, joinNode, left, notMatched, null, 0); @@ -210,7 +210,7 @@ public LogicalNode visitJoin(FilterPushDownContext context, LogicalPlan plan, Lo notMatched.clear(); context.pushingDownFilters.addAll(nonPushableQuals); - List matched = TUtil.newList(); + List matched = new ArrayList<>(); // If the query involves a subquery, the stack can be empty. // In this case, this join is the top most one within a query block. @@ -414,7 +414,7 @@ private static boolean isNonEquiThetaJoinQual(final LogicalPlan.QueryBlock block private static List extractNonEquiThetaJoinQuals(final Set predicates, final LogicalPlan.QueryBlock block, final JoinNode joinNode) { - List nonEquiThetaJoinQuals = TUtil.newList(); + List nonEquiThetaJoinQuals = new ArrayList<>(); for (EvalNode eachEval: predicates) { if (isNonEquiThetaJoinQual(block, joinNode, eachEval)) { nonEquiThetaJoinQuals.add(eachEval); @@ -534,8 +534,8 @@ private Map transformEvalsWidthByPassNode( @Override public LogicalNode visitTableSubQuery(FilterPushDownContext context, LogicalPlan plan, LogicalPlan.QueryBlock block, TableSubQueryNode node, Stack stack) throws TajoException { - List matched = TUtil.newList(); - List unmatched = TUtil.newList(); + List matched = new ArrayList<>(); + List unmatched = new ArrayList<>(); for (EvalNode eval : context.pushingDownFilters) { if (LogicalPlanner.checkIfBeEvaluatedAtRelation(block, eval, node)) { matched.add(eval); @@ -561,7 +561,8 @@ public LogicalNode visitUnion(FilterPushDownContext context, LogicalPlan plan, Stack stack) throws TajoException { LogicalNode leftNode = unionNode.getLeftChild(); - List origins = TUtil.newList(context.pushingDownFilters); + List origins = new ArrayList<>(); + origins.addAll(context.pushingDownFilters); // transformed -> pushingDownFilters Map transformedMap = transformEvalsWidthByPassNode(origins, plan, block, unionNode, leftNode); @@ -594,7 +595,7 @@ public LogicalNode visitProjection(FilterPushDownContext context, Stack stack) throws TajoException { LogicalNode childNode = projectionNode.getChild(); - List notMatched = TUtil.newList(); + List notMatched = new ArrayList<>(); //copy -> origin BiMap transformedMap = findCanPushdownAndTransform( @@ -791,8 +792,8 @@ private List addHavingNode(FilterPushDownContext context, LogicalPlan } } - List aggrEvalOrigins = TUtil.newList(); - List aggrEvals = TUtil.newList(); + List aggrEvalOrigins = new ArrayList<>(); + List aggrEvals = new ArrayList<>(); for (EvalNode eval : context.pushingDownFilters) { EvalNode copy = null; @@ -878,7 +879,7 @@ public LogicalNode visitGroupBy(FilterPushDownContext context, LogicalPlan plan, context.pushingDownFilters.removeAll(aggrEvals); } - List notMatched = TUtil.newList(); + List notMatched = new ArrayList<>(); // transform Map transformed = findCanPushdownAndTransform(context, block, groupbyNode,groupbyNode.getChild(), notMatched, null, 0); @@ -896,7 +897,7 @@ public LogicalNode visitGroupBy(FilterPushDownContext context, LogicalPlan plan, public LogicalNode visitScan(FilterPushDownContext context, LogicalPlan plan, LogicalPlan.QueryBlock block, final ScanNode scanNode, Stack stack) throws TajoException { - List matched = TUtil.newList(); + List matched = new ArrayList<>(); // find partition column and check matching Set partitionColumns = new HashSet<>(); @@ -942,7 +943,7 @@ public LogicalNode visitScan(FilterPushDownContext context, LogicalPlan plan, context.pushingDownFilters.removeAll(partitionEvals); - List notMatched = TUtil.newList(); + List notMatched = new ArrayList<>(); // transform Map transformed = diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/InSubqueryRewriteRule.java b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/InSubqueryRewriteRule.java index 6265e38fa4..cfa48b4b1e 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/InSubqueryRewriteRule.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/InSubqueryRewriteRule.java @@ -65,7 +65,7 @@ public boolean isEligible(LogicalPlanRewriteRuleContext context) { } static List extractInSubquery(EvalNode qual) { - List inSubqueries = TUtil.newList(); + List inSubqueries = new ArrayList<>(); for (EvalNode eachQual : EvalTreeUtil.findEvalsByType(qual, EvalType.IN)) { InEval inEval = (InEval) eachQual; if (inEval.getRightExpr().getType() == EvalType.SUBQUERY) { @@ -127,7 +127,8 @@ public Object visitFilter(Object context, LogicalPlan plan, LogicalPlan.QueryBlo joinNode.setInSchema(inSchema); joinNode.setOutSchema(node.getOutSchema()); - List targets = TUtil.newList(PlannerUtil.schemaToTargets(inSchema)); + List targets = new ArrayList<>(); + targets.addAll(PlannerUtil.schemaToTargets(inSchema)); joinNode.setTargets(targets); block.addJoinType(joinType); @@ -140,7 +141,7 @@ public Object visitFilter(Object context, LogicalPlan plan, LogicalPlan.QueryBlo // 4. remove in quals EvalNode[] originDnfs = AlgebraicUtil.toDisjunctiveNormalFormArray(node.getQual()); - List rewrittenDnfs = TUtil.newList(); + List rewrittenDnfs = new ArrayList<>(); for (EvalNode eachDnf : originDnfs) { Set cnfs = new HashSet<>(Arrays.asList(AlgebraicUtil.toConjunctiveNormalFormArray(eachDnf))); cnfs.removeAll(inSubqueries); diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/ProjectionPushDownRule.java b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/ProjectionPushDownRule.java index c9ef61f960..d729f30165 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/ProjectionPushDownRule.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/ProjectionPushDownRule.java @@ -363,7 +363,7 @@ public Iterator getFilteredTargets(Set required) { } class FilteredTargetIterator implements Iterator { - List filtered = TUtil.newList(); + List filtered = new ArrayList<>(); Iterator iterator; public FilteredTargetIterator(Set required) { @@ -469,7 +469,7 @@ public LogicalNode visitProjection(Context context, LogicalPlan plan, LogicalPla node.setInSchema(child.getOutSchema()); int evaluationCount = 0; - List finalTargets = TUtil.newList(); + List finalTargets = new ArrayList<>(); for (String referenceName : referenceNames) { Target target = context.targetListMgr.getTarget(referenceName); @@ -689,7 +689,9 @@ public LogicalNode visitWindowAgg(Context context, LogicalPlan plan, LogicalPlan if (node.hasAggFunctions() && aggEvalNames != null) { WindowFunctionEval [] aggEvals = new WindowFunctionEval[aggEvalNames.length]; int i = 0; - for (Iterator it = getFilteredReferences(aggEvalNames, TUtil.newList(aggEvalNames)); it.hasNext();) { + List inputList = new ArrayList<>(); + inputList.addAll(Arrays.asList(aggEvalNames)); + for (Iterator it = getFilteredReferences(aggEvalNames, inputList); it.hasNext();) { String referenceName = it.next(); Target target = context.targetListMgr.getTarget(referenceName); @@ -795,7 +797,10 @@ public LogicalNode visitGroupBy(Context context, LogicalPlan plan, LogicalPlan.Q // Getting projected targets if (node.hasAggFunctions() && aggEvalNames != null) { List aggEvals = new ArrayList<>(); - for (Iterator it = getFilteredReferences(aggEvalNames, TUtil.newList(aggEvalNames)); it.hasNext();) { + int i = 0; + List inputList = new ArrayList<>(); + inputList.addAll(Arrays.asList(aggEvalNames)); + for (Iterator it = getFilteredReferences(aggEvalNames, inputList); it.hasNext();) { String referenceName = it.next(); Target target = context.targetListMgr.getTarget(referenceName); @@ -962,14 +967,16 @@ static Iterator getFilteredReferences(Collection targetNames, Se } static Iterator getFilteredReferences(String [] targetNames, Collection required) { - return new FilteredStringsIterator(targetNames, required); + List inputList = new ArrayList<>(); + inputList.addAll(Arrays.asList(targetNames)); + return new FilteredStringsIterator(inputList, required); } static class FilteredStringsIterator implements Iterator { Iterator iterator; FilteredStringsIterator(Collection targetNames, Collection required) { - List filtered = TUtil.newList(); + List filtered = new ArrayList<>(); for (String name : targetNames) { if (required.contains(name)) { filtered.add(name); @@ -979,10 +986,6 @@ static class FilteredStringsIterator implements Iterator { iterator = filtered.iterator(); } - FilteredStringsIterator(String [] targetNames, Collection required) { - this(TUtil.newList(targetNames), required); - } - @Override public boolean hasNext() { return iterator.hasNext(); @@ -1006,7 +1009,7 @@ static class FilteredIterator implements Iterator { Iterator iterator; FilteredIterator(List targets, Set requiredReferences) { - List filtered = TUtil.newList(); + List filtered = new ArrayList<>(); Map targetSet = new HashMap<>(); for (Target t : targets) { // Only should keep an raw target instead of field reference. diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/serder/LogicalNodeDeserializer.java b/tajo-plan/src/main/java/org/apache/tajo/plan/serder/LogicalNodeDeserializer.java index e9f58d9e4f..e8c0d4f5d5 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/serder/LogicalNodeDeserializer.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/serder/LogicalNodeDeserializer.java @@ -331,7 +331,7 @@ private static DistinctGroupbyNode convertDistinctGroupby(OverridableConf contex } if (distinctGroupbyProto.getSubPlansCount() > 0) { - List subPlans = TUtil.newList(); + List subPlans = new ArrayList<>(); for (int i = 0; i < distinctGroupbyProto.getSubPlansCount(); i++) { subPlans.add(convertGroupby(context, evalContext, nodeMap, distinctGroupbyProto.getSubPlans(i))); } diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/serder/LogicalNodeSerializer.java b/tajo-plan/src/main/java/org/apache/tajo/plan/serder/LogicalNodeSerializer.java index d7a9598658..5ef377ef6c 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/serder/LogicalNodeSerializer.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/serder/LogicalNodeSerializer.java @@ -42,6 +42,7 @@ import org.apache.tajo.util.ProtoUtil; import org.apache.tajo.util.TUtil; +import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.Stack; @@ -478,7 +479,7 @@ public LogicalNode visitPartitionedTableScan(SerializeContext context, LogicalPl PlanProto.ScanNode.Builder scanBuilder = buildScanNode(node); PlanProto.PartitionScanSpec.Builder partitionScan = PlanProto.PartitionScanSpec.newBuilder(); - List pathStrs = TUtil.newList(); + List pathStrs = new ArrayList<>(); if (node.getInputPaths() != null) { for (Path p : node.getInputPaths()) { pathStrs.add(p.toString()); diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/util/ExprFinder.java b/tajo-plan/src/main/java/org/apache/tajo/plan/util/ExprFinder.java index 8475e92602..39fccc2c6b 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/util/ExprFinder.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/util/ExprFinder.java @@ -27,15 +27,12 @@ import org.apache.tajo.plan.visitor.SimpleAlgebraVisitor; import org.apache.tajo.util.TUtil; -import java.util.HashSet; -import java.util.List; -import java.util.Set; -import java.util.Stack; +import java.util.*; public class ExprFinder extends SimpleAlgebraVisitor { static class Context { - List set = TUtil.newList(); + List set = new ArrayList<>(); OpType targetType; Context(OpType type) { diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/util/PartitionFilterAlgebraVisitor.java b/tajo-plan/src/main/java/org/apache/tajo/plan/util/PartitionFilterAlgebraVisitor.java index 72fd93969c..f81b21f5e8 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/util/PartitionFilterAlgebraVisitor.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/util/PartitionFilterAlgebraVisitor.java @@ -36,6 +36,7 @@ import java.sql.Date; import java.sql.Time; import java.sql.Timestamp; +import java.util.ArrayList; import java.util.List; import java.util.Stack; import java.util.TimeZone; @@ -51,7 +52,7 @@ public class PartitionFilterAlgebraVisitor extends SimpleAlgebraVisitor queries = new Stack(); - private List> parameters = TUtil.newList(); + private List> parameters = new ArrayList<>(); public String getTableAlias() { return tableAlias; diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/util/PlannerUtil.java b/tajo-plan/src/main/java/org/apache/tajo/plan/util/PlannerUtil.java index 1d286b398c..05229bd6c2 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/util/PlannerUtil.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/util/PlannerUtil.java @@ -765,7 +765,7 @@ public Object visitGeneralSetFunction(AggFunctionFoundResult ctx, Stack st } public static Collection toQualifiedFieldNames(Collection fieldNames, String qualifier) { - List names = TUtil.newList(); + List names = new ArrayList<>(); for (String n : fieldNames) { String[] parts = n.split("\\."); if (parts.length == 1) { @@ -934,7 +934,7 @@ private static TableDesc createTableDesc(InsertNode insertNode) { * @return */ public static List extractInSubquery(Expr qual) { - List inSubqueries = TUtil.newList(); + List inSubqueries = new ArrayList<>(); for (Expr eachIn : ExprFinder.findsInOrder(qual, OpType.InPredicate)) { InPredicate inPredicate = (InPredicate) eachIn; if (inPredicate.getInValue().getType() == OpType.SimpleTableSubquery) { diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/verifier/PostLogicalPlanVerifier.java b/tajo-plan/src/main/java/org/apache/tajo/plan/verifier/PostLogicalPlanVerifier.java index 744256136b..e1f0e2ea97 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/verifier/PostLogicalPlanVerifier.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/verifier/PostLogicalPlanVerifier.java @@ -29,6 +29,7 @@ import org.apache.tajo.unit.StorageUnit; import org.apache.tajo.util.TUtil; +import java.util.ArrayList; import java.util.List; import java.util.Stack; @@ -87,7 +88,7 @@ public Object visitJoin(Context context, LogicalPlan plan, LogicalPlan.QueryBloc } else { boolean crossJoinAllowed = false; - List largeRelationNames = TUtil.newList(); + List largeRelationNames = new ArrayList<>(); if (isSimpleRelationNode(node.getLeftChild())) { if (getTableVolume((ScanNode) node.getLeftChild()) <= context.bcastLimitForCrossJoin * StorageUnit.KB) { diff --git a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/fragment/FileFragment.java b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/fragment/FileFragment.java index 4128998b1e..9892130211 100644 --- a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/fragment/FileFragment.java +++ b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/fragment/FileFragment.java @@ -226,7 +226,9 @@ public FragmentProto getProto() { } if(hosts != null) { - builder.addAllHosts(TUtil.newList(hosts)); + List inputList = new ArrayList<>(); + inputList.addAll(Arrays.asList(hosts)); + builder.addAllHosts(inputList); } FragmentProto.Builder fragmentBuilder = FragmentProto.newBuilder(); diff --git a/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestMergeScanner.java b/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestMergeScanner.java index 1598b5094d..ef4f994c48 100644 --- a/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestMergeScanner.java +++ b/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestMergeScanner.java @@ -41,8 +41,10 @@ import org.junit.runners.Parameterized.Parameters; import java.io.IOException; +import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; +import java.util.List; import static org.junit.Assert.*; @@ -165,7 +167,9 @@ public void testMultipleFiles() throws IOException { targetSchema.addColumn(schema.getColumn(0)); targetSchema.addColumn(schema.getColumn(2)); - Scanner scanner = new MergeScanner(conf, schema, meta, TUtil.newList(fragment), targetSchema); + List inputList = new ArrayList<>(); + inputList.addAll(Arrays.asList(fragment)); + Scanner scanner = new MergeScanner(conf, schema, meta, inputList, targetSchema); assertEquals(isProjectableStorage(meta.getDataFormat()), scanner.isProjectable()); scanner.init(); diff --git a/tajo-storage/tajo-storage-jdbc/src/main/java/org/apache/tajo/storage/jdbc/JdbcFragment.java b/tajo-storage/tajo-storage-jdbc/src/main/java/org/apache/tajo/storage/jdbc/JdbcFragment.java index 1c963fdac7..20bc2c4fcd 100644 --- a/tajo-storage/tajo-storage-jdbc/src/main/java/org/apache/tajo/storage/jdbc/JdbcFragment.java +++ b/tajo-storage/tajo-storage-jdbc/src/main/java/org/apache/tajo/storage/jdbc/JdbcFragment.java @@ -25,6 +25,10 @@ import org.apache.tajo.storage.jdbc.JdbcFragmentProtos.JdbcFragmentProto; import org.apache.tajo.util.TUtil; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + public class JdbcFragment implements Fragment, Comparable, Cloneable { String uri; String inputSourceId; @@ -89,7 +93,9 @@ public CatalogProtos.FragmentProto getProto() { builder.setInputSourceId(this.inputSourceId); builder.setUri(this.uri); if(hostNames != null) { - builder.addAllHosts(TUtil.newList(hostNames)); + List inputList = new ArrayList<>(); + inputList.addAll(Arrays.asList(hostNames)); + builder.addAllHosts(inputList); } CatalogProtos.FragmentProto.Builder fragmentBuilder = CatalogProtos.FragmentProto.newBuilder(); From 66021aaf09c2f4ca657cd2a5796dd3f993dc8e7a Mon Sep 17 00:00:00 2001 From: Dongkyu Hwangbo Date: Wed, 2 Dec 2015 15:50:22 +0900 Subject: [PATCH 02/12] variable renaming --- .../main/java/org/apache/tajo/util/TUtil.java | 6 ++--- .../tajo/engine/query/TestGroupByQuery.java | 6 ++--- .../tajo/engine/query/TestHBaseTable.java | 6 ++--- .../engine/query/TestSelectNestedRecord.java | 12 +++++----- .../tajo/querymaster/Repartitioner.java | 24 +++++++++---------- 5 files changed, 27 insertions(+), 27 deletions(-) diff --git a/tajo-common/src/main/java/org/apache/tajo/util/TUtil.java b/tajo-common/src/main/java/org/apache/tajo/util/TUtil.java index 59f4da9b91..5440a9a983 100644 --- a/tajo-common/src/main/java/org/apache/tajo/util/TUtil.java +++ b/tajo-common/src/main/java/org/apache/tajo/util/TUtil.java @@ -155,9 +155,9 @@ public static void putCollectionToNestedList(Map if (map.containsKey(k1)) { map.get(k1).addAll(list); } else { - List input = new ArrayList<>(); - input.addAll(list); - map.put(k1, input); + List inputList = new ArrayList<>(); + inputList.addAll(list); + map.put(k1, inputList); } } diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestGroupByQuery.java b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestGroupByQuery.java index 3d5cdb57ce..57c84e50b1 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestGroupByQuery.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestGroupByQuery.java @@ -58,9 +58,9 @@ public TestGroupByQuery(String groupByOption) throws Exception { @AfterClass public static void tearDown() throws Exception { - List listInput = new ArrayList<>(); - listInput.addAll(Arrays.asList(SessionVars.GROUPBY_MULTI_LEVEL_ENABLED.keyname())); - client.unsetSessionVariables(listInput); + List inputList = new ArrayList<>(); + inputList.addAll(Arrays.asList(SessionVars.GROUPBY_MULTI_LEVEL_ENABLED.keyname())); + client.unsetSessionVariables(inputList); } @Parameters diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestHBaseTable.java b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestHBaseTable.java index 0fb18fabf0..7dca809558 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestHBaseTable.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestHBaseTable.java @@ -1312,9 +1312,9 @@ public void testInsertIntoUsingPut() throws Exception { } finally { executeString("DROP TABLE hbase_mapped_table PURGE").close(); - List listInput = new ArrayList<>(); - listInput.addAll(Arrays.asList(HBaseStorageConstants.INSERT_PUT_MODE)); - client.unsetSessionVariables(listInput); + List inputList = new ArrayList<>(); + inputList.addAll(Arrays.asList(HBaseStorageConstants.INSERT_PUT_MODE)); + client.unsetSessionVariables(inputList); if (scanner != null) { scanner.close(); diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java index 14ef87b398..e585948a05 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java @@ -120,9 +120,9 @@ public final void testNestedFieldAsJoinKey1() throws Exception { public final void testInsertType1() throws Exception { // all columns List tables = executeDDL("sample1_ddl.sql", "sample1", "sample3"); - List listInput = new ArrayList<>(); - listInput.addAll(Arrays.asList("sample3")); - assertEquals(listInput, tables); + List inputList = new ArrayList<>(); + inputList.addAll(Arrays.asList("sample3")); + assertEquals(inputList, tables); executeString("CREATE TABLE clone (title TEXT, name RECORD (first_name TEXT, last_name TEXT)) USING JSON;").close(); @@ -136,9 +136,9 @@ public final void testInsertType1() throws Exception { public final void testInsertType2() throws Exception { // some columns List tables = executeDDL("sample1_ddl.sql", "sample1", "sample4"); - List listInput = new ArrayList<>(); - listInput.addAll(Arrays.asList("sample4")); - assertEquals(listInput, tables); + List inputList = new ArrayList<>(); + inputList.addAll(Arrays.asList("sample4")); + assertEquals(inputList, tables); executeString("CREATE TABLE clone2 (title TEXT, name RECORD (first_name TEXT, last_name TEXT)) USING JSON;").close(); diff --git a/tajo-core/src/main/java/org/apache/tajo/querymaster/Repartitioner.java b/tajo-core/src/main/java/org/apache/tajo/querymaster/Repartitioner.java index 8cb3013445..7f8bfd5f44 100644 --- a/tajo-core/src/main/java/org/apache/tajo/querymaster/Repartitioner.java +++ b/tajo-core/src/main/java/org/apache/tajo/querymaster/Repartitioner.java @@ -321,9 +321,9 @@ private static void scheduleSymmetricRepartitionJoin(QueryMasterTask.QueryMaster if (tbNameToInterm.containsKey(scanEbId)) { tbNameToInterm.get(scanEbId).add(intermediateEntry); } else { - List listInput = new ArrayList<>(); - listInput.addAll(Arrays.asList(intermediateEntry)); - tbNameToInterm.put(scanEbId, listInput); + List inputList = new ArrayList<>(); + inputList.addAll(Arrays.asList(intermediateEntry)); + tbNameToInterm.put(scanEbId, inputList); } } else { Map> tbNameToInterm = @@ -1082,10 +1082,10 @@ public static List> splitOrMergeIntermediates(@NotNull String fetchListForSingleTask = new ArrayList<>(); fetchListVolume = 0; } - List listInput = new ArrayList<>(); - listInput.addAll(Arrays.asList(currentInterm)); + List inputList = new ArrayList<>(); + inputList.addAll(Arrays.asList(currentInterm)); FetchImpl fetch = new FetchImpl(fetchName, currentInterm.getPullHost(), SCATTERED_HASH_SHUFFLE, - ebId, currentInterm.getPartId(), listInput); + ebId, currentInterm.getPartId(), inputList); fetch.setOffset(eachSplit.getFirst()); fetch.setLength(eachSplit.getSecond()); fetchListForSingleTask.add(fetch.getProto()); @@ -1226,9 +1226,9 @@ public static Map> hashByKey(List(); - listInput.addAll(Arrays.asList(entry)); - hashed.put(entry.getPartId(), listInput); + List inputList = new ArrayList<>(); + inputList.addAll(Arrays.asList(entry)); + hashed.put(entry.getPartId(), inputList); } } @@ -1244,9 +1244,9 @@ public static Map> hashByHost(List(); - listInput.addAll(Arrays.asList(entry)); - hashed.put(host, listInput); + List inputList = new ArrayList<>(); + inputList.addAll(Arrays.asList(entry)); + hashed.put(host, inputList); } } From f99c549db750f96104b404130487652945c3a5fa Mon Sep 17 00:00:00 2001 From: Dongkyu Hwangbo Date: Wed, 2 Dec 2015 16:58:09 +0900 Subject: [PATCH 03/12] fix bugs --- .../main/java/org/apache/tajo/function/FunctionSignature.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java index fb3a6bbbb3..1bcb8c977b 100644 --- a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java +++ b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java @@ -25,6 +25,7 @@ import org.apache.tajo.util.TUtil; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; import static org.apache.tajo.catalog.proto.CatalogProtos.FunctionSignatureProto; @@ -113,7 +114,7 @@ public FunctionSignatureProto getProto() { builder.setType(functionType); builder.setName(name); List inputList = new ArrayList<>(); - inputList.add(paramTypes); + inputList.addAll(Arrays.asList(paramTypes)); builder.addAllParameterTypes(inputList); builder.setReturnType(returnType); return builder.build(); From 89131e56c03c69d448094a4fac0b0d6672151c1c Mon Sep 17 00:00:00 2001 From: Dongkyu Hwangbo Date: Mon, 14 Dec 2015 14:27:25 +0900 Subject: [PATCH 04/12] rewrite overall --- .../java/org/apache/tajo/catalog/Schema.java | 3 +-- .../tajo/function/FunctionSignature.java | 4 +--- .../org/apache/tajo/cli/tools/TajoDump.java | 3 +-- .../main/java/org/apache/tajo/util/TUtil.java | 4 +--- .../planner/physical/TestPhysicalPlanner.java | 4 +--- .../tajo/engine/query/TestGroupByQuery.java | 4 +--- .../tajo/engine/query/TestHBaseTable.java | 4 +--- .../engine/query/TestSelectNestedRecord.java | 4 +--- .../rewriter/rules/BroadcastJoinRule.java | 9 +++----- .../planner/physical/ExternalSortExec.java | 3 +-- .../tajo/querymaster/Repartitioner.java | 23 +++++-------------- .../org/apache/tajo/plan/ExprAnnotator.java | 4 +--- .../org/apache/tajo/plan/LogicalPlanner.java | 6 ++--- .../rewrite/rules/ProjectionPushDownRule.java | 13 +++-------- .../tajo/storage/fragment/FileFragment.java | 4 +--- .../apache/tajo/storage/TestMergeScanner.java | 4 +--- .../tajo/storage/jdbc/JdbcFragment.java | 4 +--- 17 files changed, 27 insertions(+), 73 deletions(-) diff --git a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/Schema.java b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/Schema.java index d12e190f91..f9edcd9b4f 100644 --- a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/Schema.java +++ b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/Schema.java @@ -84,8 +84,7 @@ private static void deserializeColumn(List tobeAdded, List // where is start index of nested fields? int childStartIndex = tobeAdded.size() - childNum; // Extract nested fields - List nestedColumns = new ArrayList<>(); - nestedColumns.addAll(tobeAdded.subList(childStartIndex, childStartIndex + childNum)); + List nestedColumns = new ArrayList<>(tobeAdded.subList(childStartIndex, childStartIndex + childNum)); // Remove nested fields from the the current level for (int i = 0; i < childNum; i++) { diff --git a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java index 1bcb8c977b..144edbee9a 100644 --- a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java +++ b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java @@ -113,9 +113,7 @@ public FunctionSignatureProto getProto() { FunctionSignatureProto.Builder builder = FunctionSignatureProto.newBuilder(); builder.setType(functionType); builder.setName(name); - List inputList = new ArrayList<>(); - inputList.addAll(Arrays.asList(paramTypes)); - builder.addAllParameterTypes(inputList); + builder.addAllParameterTypes(Arrays.asList(paramTypes)); builder.setReturnType(returnType); return builder.build(); } diff --git a/tajo-cli/src/main/java/org/apache/tajo/cli/tools/TajoDump.java b/tajo-cli/src/main/java/org/apache/tajo/cli/tools/TajoDump.java index 30d1eeb96e..b541c0355e 100644 --- a/tajo-cli/src/main/java/org/apache/tajo/cli/tools/TajoDump.java +++ b/tajo-cli/src/main/java/org/apache/tajo/cli/tools/TajoDump.java @@ -169,8 +169,7 @@ private static void dumpDatabase(TajoClient client, String databaseName, PrintWr writer.write("\n\n"); // returned list is immutable. - List tableNames = new ArrayList<>(); - tableNames.addAll(client.getTableList(databaseName)); + List tableNames = new ArrayList<>(client.getTableList(databaseName)); Collections.sort(tableNames); for (String tableName : tableNames) { try { diff --git a/tajo-common/src/main/java/org/apache/tajo/util/TUtil.java b/tajo-common/src/main/java/org/apache/tajo/util/TUtil.java index 5440a9a983..99ceff09aa 100644 --- a/tajo-common/src/main/java/org/apache/tajo/util/TUtil.java +++ b/tajo-common/src/main/java/org/apache/tajo/util/TUtil.java @@ -155,9 +155,7 @@ public static void putCollectionToNestedList(Map if (map.containsKey(k1)) { map.get(k1).addAll(list); } else { - List inputList = new ArrayList<>(); - inputList.addAll(list); - map.put(k1, inputList); + map.put(k1, new ArrayList<>(list)); } } diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/engine/planner/physical/TestPhysicalPlanner.java b/tajo-core-tests/src/test/java/org/apache/tajo/engine/planner/physical/TestPhysicalPlanner.java index 17eb06332c..90127f98f1 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/engine/planner/physical/TestPhysicalPlanner.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/engine/planner/physical/TestPhysicalPlanner.java @@ -674,9 +674,7 @@ public final void testPartitionedStorePlan() throws IOException, TajoException { } assertEquals(numPartitions, fragments.size()); - List inputList = new ArrayList<>(); - inputList.addAll(fragments); - Scanner scanner = new MergeScanner(conf, rootNode.getOutSchema(), outputMeta, inputList); + Scanner scanner = new MergeScanner(conf, rootNode.getOutSchema(), outputMeta, new ArrayList<>(fragments)); scanner.init(); Tuple tuple; diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestGroupByQuery.java b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestGroupByQuery.java index 57c84e50b1..d69f3c9881 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestGroupByQuery.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestGroupByQuery.java @@ -58,9 +58,7 @@ public TestGroupByQuery(String groupByOption) throws Exception { @AfterClass public static void tearDown() throws Exception { - List inputList = new ArrayList<>(); - inputList.addAll(Arrays.asList(SessionVars.GROUPBY_MULTI_LEVEL_ENABLED.keyname())); - client.unsetSessionVariables(inputList); + client.unsetSessionVariables(Arrays.asList(SessionVars.GROUPBY_MULTI_LEVEL_ENABLED.keyname())); } @Parameters diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestHBaseTable.java b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestHBaseTable.java index 7dca809558..a23a4fca73 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestHBaseTable.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestHBaseTable.java @@ -1312,9 +1312,7 @@ public void testInsertIntoUsingPut() throws Exception { } finally { executeString("DROP TABLE hbase_mapped_table PURGE").close(); - List inputList = new ArrayList<>(); - inputList.addAll(Arrays.asList(HBaseStorageConstants.INSERT_PUT_MODE)); - client.unsetSessionVariables(inputList); + client.unsetSessionVariables(Arrays.asList(HBaseStorageConstants.INSERT_PUT_MODE)); if (scanner != null) { scanner.close(); diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java index e585948a05..04ea201b73 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java @@ -34,9 +34,7 @@ public class TestSelectNestedRecord extends QueryTestCaseBase { @Test public final void testSelect0() throws Exception { List tables = executeDDL("sample1_ddl.sql", "sample1", "sample1"); - List inputList = new ArrayList<>(); - inputList.addAll(Arrays.asList("sample1")); - assertEquals(inputList, tables); + assertEquals(Arrays.asList("sample1"), tables); ResultSet res = executeQuery(); assertResultSet(res); diff --git a/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/rewriter/rules/BroadcastJoinRule.java b/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/rewriter/rules/BroadcastJoinRule.java index a4261b246e..c6f4817e9b 100644 --- a/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/rewriter/rules/BroadcastJoinRule.java +++ b/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/rewriter/rules/BroadcastJoinRule.java @@ -143,8 +143,7 @@ public void visit(Object context, Stack stack, ExecutionBlockI // When every child is a broadcast candidate, enforce non-broadcast for the largest relation for the join to be // computed at the node who stores such largest relation. if (isFullyBroadcastable(current)) { - List broadcastCandidates = new ArrayList<>(); - broadcastCandidates.addAll(current.getBroadcastRelations()); + List broadcastCandidates = new ArrayList<>(current.getBroadcastRelations()); Collections.sort(broadcastCandidates, relSizeComparator); current.removeBroadcastRelation(broadcastCandidates.remove(broadcastCandidates.size()-1)); @@ -245,8 +244,7 @@ private void visitNonLeafNode(Context context, ExecutionBlock current) { context.estimatedEbOutputSize.put(current.getId(), outputVolume); } } else { - List relations = new ArrayList<>(); - relations.addAll(current.getBroadcastRelations()); + List relations = new ArrayList<>(current.getBroadcastRelations()); for (ScanNode eachRelation : relations) { current.removeBroadcastRelation(eachRelation); } @@ -389,8 +387,7 @@ private long estimateOutputVolumeInternal(LogicalNode node) throws TajoInternalE * @param block */ private void checkTotalSizeOfBroadcastableRelations(Context context, ExecutionBlock block) { - List broadcastCandidates = new ArrayList<>(); - broadcastCandidates.addAll(block.getBroadcastRelations()); + List broadcastCandidates = new ArrayList<>(block.getBroadcastRelations()); Collections.sort(broadcastCandidates, relSizeComparator); // Enforce broadcast for candidates in ascending order of relation size diff --git a/tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/ExternalSortExec.java b/tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/ExternalSortExec.java index 4d2f34bc07..8920a155b3 100644 --- a/tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/ExternalSortExec.java +++ b/tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/ExternalSortExec.java @@ -334,8 +334,7 @@ private int calculateFanout(int remainInputChunks, int inputNum, int outputNum, private Scanner externalMergeAndSort(List chunks) throws Exception { int level = 0; - final List inputFiles = new ArrayList<>(); - inputFiles.addAll(chunks); + final List inputFiles = new ArrayList<>(chunks); final List outputFiles = new ArrayList<>(); int remainRun = inputFiles.size(); int chunksSize = chunks.size(); diff --git a/tajo-core/src/main/java/org/apache/tajo/querymaster/Repartitioner.java b/tajo-core/src/main/java/org/apache/tajo/querymaster/Repartitioner.java index 7f8bfd5f44..57a8268810 100644 --- a/tajo-core/src/main/java/org/apache/tajo/querymaster/Repartitioner.java +++ b/tajo-core/src/main/java/org/apache/tajo/querymaster/Repartitioner.java @@ -321,16 +321,12 @@ private static void scheduleSymmetricRepartitionJoin(QueryMasterTask.QueryMaster if (tbNameToInterm.containsKey(scanEbId)) { tbNameToInterm.get(scanEbId).add(intermediateEntry); } else { - List inputList = new ArrayList<>(); - inputList.addAll(Arrays.asList(intermediateEntry)); - tbNameToInterm.put(scanEbId, inputList); + tbNameToInterm.put(scanEbId, Arrays.asList(intermediateEntry)); } } else { Map> tbNameToInterm = new HashMap<>(); - List inputList = new ArrayList<>(); - inputList.addAll(Arrays.asList(intermediateEntry)); - tbNameToInterm.put(scanEbId, inputList); + tbNameToInterm.put(scanEbId, Arrays.asList(intermediateEntry)); hashEntries.put(intermediateEntry.getPartId(), tbNameToInterm); } } @@ -1003,8 +999,7 @@ public static void scheduleScatteredHashShuffleFetches(TaskSchedulerContext sche int partId = eachInterm.getPartId(); List partitionInterms = partitionIntermMap.get(partId); if (partitionInterms == null) { - partitionInterms = new ArrayList<>(); - partitionInterms.addAll(Arrays.asList(eachInterm)); + partitionInterms = new ArrayList<>(Arrays.asList(eachInterm)); partitionIntermMap.put(partId, partitionInterms); } else { partitionInterms.add(eachInterm); @@ -1082,10 +1077,8 @@ public static List> splitOrMergeIntermediates(@NotNull String fetchListForSingleTask = new ArrayList<>(); fetchListVolume = 0; } - List inputList = new ArrayList<>(); - inputList.addAll(Arrays.asList(currentInterm)); FetchImpl fetch = new FetchImpl(fetchName, currentInterm.getPullHost(), SCATTERED_HASH_SHUFFLE, - ebId, currentInterm.getPartId(), inputList); + ebId, currentInterm.getPartId(), Arrays.asList(currentInterm)); fetch.setOffset(eachSplit.getFirst()); fetch.setLength(eachSplit.getSecond()); fetchListForSingleTask.add(fetch.getProto()); @@ -1226,9 +1219,7 @@ public static Map> hashByKey(List(); - inputList.addAll(Arrays.asList(entry)); - hashed.put(entry.getPartId(), inputList); + hashed.put(entry.getPartId(), Arrays.asList(entry)); } } @@ -1244,9 +1235,7 @@ public static Map> hashByHost(List(); - inputList.addAll(Arrays.asList(entry)); - hashed.put(host, inputList); + hashed.put(host, Arrays.asList(entry)); } } diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/ExprAnnotator.java b/tajo-plan/src/main/java/org/apache/tajo/plan/ExprAnnotator.java index 6a20de08f6..3e14200b94 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/ExprAnnotator.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/ExprAnnotator.java @@ -594,9 +594,7 @@ public EvalNode visitFunction(Context ctx, Stack stack, FunctionExpr expr) FunctionDesc funcDesc = catalog.getFunction(expr.getSignature(), paramTypes); // trying the implicit type conversion between actual parameter types and the definition types. - List inputList = new ArrayList<>(); - inputList.addAll(Arrays.asList(funcDesc.getParamTypes())); - if (CatalogUtil.checkIfVariableLengthParamDefinition(inputList)) { + if (CatalogUtil.checkIfVariableLengthParamDefinition(Arrays.asList(funcDesc.getParamTypes()))) { DataType lastDataType = funcDesc.getParamTypes()[0]; for (int i = 0; i < givenArgs.length; i++) { if (i < (funcDesc.getParamTypes().length - 1)) { // variable length diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlanner.java b/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlanner.java index 86af6cb662..c458f3fd7f 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlanner.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlanner.java @@ -1191,8 +1191,7 @@ public LogicalNode visitJoin(PlanContext context, Stack stack, Join join) // In this case, this join is the top most one within a query block. boolean isTopMostJoin = stack.isEmpty() ? true : stack.peek().getType() != OpType.Join; List newlyEvaluatedExprs = getNewlyEvaluatedExprsForJoin(context, joinNode, isTopMostJoin); - List targets = new ArrayList<>(); - targets.addAll(PlannerUtil.schemaToTargets(merged)); + List targets = new ArrayList<>(PlannerUtil.schemaToTargets(merged)); for (String newAddedExpr : newlyEvaluatedExprs) { targets.add(block.namedExprsMgr.getTarget(newAddedExpr, true)); @@ -1300,8 +1299,7 @@ private LogicalNode createCartesianProduct(PlanContext context, LogicalNode left } catch (UndefinedColumnException ve) {} } - List targets = new ArrayList<>(); - targets.addAll(PlannerUtil.schemaToTargets(merged)); + List targets = new ArrayList<>(PlannerUtil.schemaToTargets(merged)); for (String newAddedExpr : newlyEvaluatedExprs) { targets.add(block.namedExprsMgr.getTarget(newAddedExpr, true)); } diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/ProjectionPushDownRule.java b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/ProjectionPushDownRule.java index d729f30165..ce083f1c98 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/ProjectionPushDownRule.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/ProjectionPushDownRule.java @@ -689,9 +689,7 @@ public LogicalNode visitWindowAgg(Context context, LogicalPlan plan, LogicalPlan if (node.hasAggFunctions() && aggEvalNames != null) { WindowFunctionEval [] aggEvals = new WindowFunctionEval[aggEvalNames.length]; int i = 0; - List inputList = new ArrayList<>(); - inputList.addAll(Arrays.asList(aggEvalNames)); - for (Iterator it = getFilteredReferences(aggEvalNames, inputList); it.hasNext();) { + for (Iterator it = getFilteredReferences(aggEvalNames, Arrays.asList(aggEvalNames)); it.hasNext();) { String referenceName = it.next(); Target target = context.targetListMgr.getTarget(referenceName); @@ -797,10 +795,7 @@ public LogicalNode visitGroupBy(Context context, LogicalPlan plan, LogicalPlan.Q // Getting projected targets if (node.hasAggFunctions() && aggEvalNames != null) { List aggEvals = new ArrayList<>(); - int i = 0; - List inputList = new ArrayList<>(); - inputList.addAll(Arrays.asList(aggEvalNames)); - for (Iterator it = getFilteredReferences(aggEvalNames, inputList); it.hasNext();) { + for (Iterator it = getFilteredReferences(aggEvalNames, Arrays.asList(aggEvalNames)); it.hasNext();) { String referenceName = it.next(); Target target = context.targetListMgr.getTarget(referenceName); @@ -967,9 +962,7 @@ static Iterator getFilteredReferences(Collection targetNames, Se } static Iterator getFilteredReferences(String [] targetNames, Collection required) { - List inputList = new ArrayList<>(); - inputList.addAll(Arrays.asList(targetNames)); - return new FilteredStringsIterator(inputList, required); + return new FilteredStringsIterator(Arrays.asList(targetNames), required); } static class FilteredStringsIterator implements Iterator { diff --git a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/fragment/FileFragment.java b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/fragment/FileFragment.java index 9892130211..8f18c7a0f0 100644 --- a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/fragment/FileFragment.java +++ b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/fragment/FileFragment.java @@ -226,9 +226,7 @@ public FragmentProto getProto() { } if(hosts != null) { - List inputList = new ArrayList<>(); - inputList.addAll(Arrays.asList(hosts)); - builder.addAllHosts(inputList); + builder.addAllHosts(Arrays.asList(hosts)); } FragmentProto.Builder fragmentBuilder = FragmentProto.newBuilder(); diff --git a/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestMergeScanner.java b/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestMergeScanner.java index ef4f994c48..252f4215dd 100644 --- a/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestMergeScanner.java +++ b/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestMergeScanner.java @@ -167,9 +167,7 @@ public void testMultipleFiles() throws IOException { targetSchema.addColumn(schema.getColumn(0)); targetSchema.addColumn(schema.getColumn(2)); - List inputList = new ArrayList<>(); - inputList.addAll(Arrays.asList(fragment)); - Scanner scanner = new MergeScanner(conf, schema, meta, inputList, targetSchema); + Scanner scanner = new MergeScanner(conf, schema, meta, Arrays.asList(fragment), targetSchema); assertEquals(isProjectableStorage(meta.getDataFormat()), scanner.isProjectable()); scanner.init(); diff --git a/tajo-storage/tajo-storage-jdbc/src/main/java/org/apache/tajo/storage/jdbc/JdbcFragment.java b/tajo-storage/tajo-storage-jdbc/src/main/java/org/apache/tajo/storage/jdbc/JdbcFragment.java index 20bc2c4fcd..ef48958312 100644 --- a/tajo-storage/tajo-storage-jdbc/src/main/java/org/apache/tajo/storage/jdbc/JdbcFragment.java +++ b/tajo-storage/tajo-storage-jdbc/src/main/java/org/apache/tajo/storage/jdbc/JdbcFragment.java @@ -93,9 +93,7 @@ public CatalogProtos.FragmentProto getProto() { builder.setInputSourceId(this.inputSourceId); builder.setUri(this.uri); if(hostNames != null) { - List inputList = new ArrayList<>(); - inputList.addAll(Arrays.asList(hostNames)); - builder.addAllHosts(inputList); + builder.addAllHosts(Arrays.asList(hostNames)); } CatalogProtos.FragmentProto.Builder fragmentBuilder = CatalogProtos.FragmentProto.newBuilder(); From 6f6d51704fcf4d810b1e47ad940c09eb224e2599 Mon Sep 17 00:00:00 2001 From: Dongkyu Hwangbo Date: Mon, 14 Dec 2015 15:07:57 +0900 Subject: [PATCH 05/12] rewrite overall, remove unused import --- .../tajo/catalog/AbstractCatalogClient.java | 1 - .../java/org/apache/tajo/catalog/Schema.java | 6 +--- .../org/apache/tajo/catalog/SchemaUtil.java | 4 +-- .../tajo/function/FunctionSignature.java | 2 -- .../tajo/catalog/store/HiveCatalogStore.java | 1 - .../catalog/store/TestHiveCatalogStore.java | 1 - .../InfoSchemaMetadataDictionary.java | 1 - .../tajo/catalog/store/AbstractDBStore.java | 1 - .../store/XMLCatalogSchemaManager.java | 1 - .../org/apache/tajo/cli/tools/TajoDump.java | 1 - .../tajo/rule/SelfDiagnosisRuleSession.java | 1 - .../tajo/service/BaseServiceTracker.java | 5 ++- .../tajo/validation/PathListValidator.java | 2 -- .../org/apache/tajo/rule/TestRuleEngine.java | 1 - .../org/apache/tajo/rule/TestRuleSession.java | 1 - .../tajo/validation/TestValidators.java | 1 - .../planner/physical/TestPhysicalPlanner.java | 1 - .../tajo/engine/query/TestGroupByQuery.java | 1 - .../tajo/engine/query/TestHBaseTable.java | 1 - .../engine/query/TestSelectNestedRecord.java | 34 +++++-------------- .../rs/resources/TestQueryResultResource.java | 1 - .../tajo/engine/function/FunctionLoader.java | 1 - .../BaseGlobalPlanRewriteRuleProvider.java | 1 - .../rewriter/rules/BroadcastJoinRule.java | 1 - .../DistinctGroupbyHashAggregationExec.java | 1 - .../planner/physical/ExternalSortExec.java | 1 - .../apache/tajo/ha/HdfsServiceTracker.java | 1 - .../apache/tajo/master/exec/DDLExecutor.java | 1 - .../NonForwardQueryResultSystemScanner.java | 1 - .../org/apache/tajo/querymaster/Query.java | 1 - .../tajo/worker/TaskAttemptContext.java | 1 - .../apache/tajo/plan/LogicalOptimizer.java | 1 - .../org/apache/tajo/plan/LogicalPlanner.java | 1 - .../apache/tajo/plan/expr/AlgebraicUtil.java | 1 - .../apache/tajo/plan/expr/EvalTreeUtil.java | 1 - .../function/python/PythonScriptEngine.java | 1 - .../plan/function/stream/StreamingUtil.java | 1 - .../tajo/plan/nameresolver/NameResolver.java | 1 - .../plan/nameresolver/ResolverByLegacy.java | 1 - ...aseLogicalPlanPreprocessPhaseProvider.java | 2 -- .../BaseLogicalPlanRewriteRuleProvider.java | 1 - .../plan/rewrite/BaseSchemaBuildPhase.java | 1 - .../rewrite/rules/FilterPushDownRule.java | 1 - .../rewrite/rules/InSubqueryRewriteRule.java | 1 - .../plan/serder/LogicalNodeSerializer.java | 1 - .../org/apache/tajo/plan/util/ExprFinder.java | 7 ++-- .../util/PartitionFilterAlgebraVisitor.java | 1 - .../apache/tajo/plan/util/PlannerUtil.java | 1 - .../verifier/PostLogicalPlanVerifier.java | 1 - .../apache/tajo/storage/TestMergeScanner.java | 3 -- .../tajo/storage/jdbc/JdbcFragment.java | 3 -- 51 files changed, 17 insertions(+), 92 deletions(-) diff --git a/tajo-catalog/tajo-catalog-client/src/main/java/org/apache/tajo/catalog/AbstractCatalogClient.java b/tajo-catalog/tajo-catalog-client/src/main/java/org/apache/tajo/catalog/AbstractCatalogClient.java index 9dc1140b19..b0acbb12a4 100644 --- a/tajo-catalog/tajo-catalog-client/src/main/java/org/apache/tajo/catalog/AbstractCatalogClient.java +++ b/tajo-catalog/tajo-catalog-client/src/main/java/org/apache/tajo/catalog/AbstractCatalogClient.java @@ -33,7 +33,6 @@ import org.apache.tajo.rpc.protocolrecords.PrimitiveProtos.ReturnState; import org.apache.tajo.rpc.protocolrecords.PrimitiveProtos.StringListResponse; import org.apache.tajo.util.ProtoUtil; -import org.apache.tajo.util.TUtil; import java.io.Closeable; import java.util.ArrayList; diff --git a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/Schema.java b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/Schema.java index f9edcd9b4f..b9c212c98e 100644 --- a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/Schema.java +++ b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/Schema.java @@ -21,7 +21,6 @@ import com.google.common.base.Objects; import com.google.common.collect.ImmutableList; import com.google.gson.annotations.Expose; -import org.apache.avro.generic.GenericData; import org.apache.tajo.catalog.SchemaUtil.ColumnVisitor; import org.apache.tajo.catalog.json.CatalogGsonHelper; import org.apache.tajo.catalog.proto.CatalogProtos.ColumnProto; @@ -33,7 +32,6 @@ import org.apache.tajo.exception.TajoRuntimeException; import org.apache.tajo.json.GsonObject; import org.apache.tajo.util.StringUtils; -import org.apache.tajo.util.TUtil; import java.util.*; @@ -424,9 +422,7 @@ public synchronized Schema addColumn(String name, TypeDesc typeDesc) { Column newCol = new Column(normalized, typeDesc); fields.add(newCol); fieldsByQualifiedName.put(newCol.getQualifiedName(), fields.size() - 1); - List inputList = new ArrayList<>(); - inputList.add(fields.size() - 1); - fieldsByName.put(newCol.getSimpleName(), inputList); + fieldsByName.put(newCol.getSimpleName(), new ArrayList(fields.size() - 1)); return this; } diff --git a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/SchemaUtil.java b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/SchemaUtil.java index c9f8c158b0..0ffe584c5d 100644 --- a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/SchemaUtil.java +++ b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/SchemaUtil.java @@ -22,7 +22,6 @@ import com.google.common.collect.Lists; import org.apache.tajo.exception.TajoRuntimeException; import org.apache.tajo.exception.UnsupportedDataTypeException; -import org.apache.tajo.util.TUtil; import java.util.ArrayList; import java.util.HashMap; @@ -184,8 +183,7 @@ private static void visitInDepthFirstOrder(int depth, if (column.getDataType().getType() == Type.RECORD) { for (Column nestedColumn : column.typeDesc.nestedRecordSchema.getRootColumns()) { - List newPath = new ArrayList<>(); - newPath.addAll(path); + List newPath = new ArrayList<>(path); newPath.add(column.getQualifiedName()); visitInDepthFirstOrder(depth + 1, newPath, function, nestedColumn); diff --git a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java index 144edbee9a..bf37647894 100644 --- a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java +++ b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java @@ -24,9 +24,7 @@ import org.apache.tajo.common.ProtoObject; import org.apache.tajo.util.TUtil; -import java.util.ArrayList; import java.util.Arrays; -import java.util.List; import static org.apache.tajo.catalog.proto.CatalogProtos.FunctionSignatureProto; import static org.apache.tajo.catalog.proto.CatalogProtos.FunctionType; diff --git a/tajo-catalog/tajo-catalog-drivers/tajo-hive/src/main/java/org/apache/tajo/catalog/store/HiveCatalogStore.java b/tajo-catalog/tajo-catalog-drivers/tajo-hive/src/main/java/org/apache/tajo/catalog/store/HiveCatalogStore.java index 37c2b579a9..b8cd57a1b0 100644 --- a/tajo-catalog/tajo-catalog-drivers/tajo-hive/src/main/java/org/apache/tajo/catalog/store/HiveCatalogStore.java +++ b/tajo-catalog/tajo-catalog-drivers/tajo-hive/src/main/java/org/apache/tajo/catalog/store/HiveCatalogStore.java @@ -55,7 +55,6 @@ import org.apache.tajo.plan.util.PartitionFilterAlgebraVisitor; import org.apache.tajo.storage.StorageConstants; import org.apache.tajo.util.KeyValueSet; -import org.apache.tajo.util.TUtil; import org.apache.thrift.TException; import parquet.hadoop.ParquetOutputFormat; diff --git a/tajo-catalog/tajo-catalog-drivers/tajo-hive/src/test/java/org/apache/tajo/catalog/store/TestHiveCatalogStore.java b/tajo-catalog/tajo-catalog-drivers/tajo-hive/src/test/java/org/apache/tajo/catalog/store/TestHiveCatalogStore.java index dc392a9217..ffe95787d1 100644 --- a/tajo-catalog/tajo-catalog-drivers/tajo-hive/src/test/java/org/apache/tajo/catalog/store/TestHiveCatalogStore.java +++ b/tajo-catalog/tajo-catalog-drivers/tajo-hive/src/test/java/org/apache/tajo/catalog/store/TestHiveCatalogStore.java @@ -39,7 +39,6 @@ import org.apache.tajo.storage.StorageConstants; import org.apache.tajo.util.CommonTestingUtil; import org.apache.tajo.util.KeyValueSet; -import org.apache.tajo.util.TUtil; import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; diff --git a/tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/dictionary/InfoSchemaMetadataDictionary.java b/tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/dictionary/InfoSchemaMetadataDictionary.java index b5fac49186..fb7129e362 100644 --- a/tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/dictionary/InfoSchemaMetadataDictionary.java +++ b/tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/dictionary/InfoSchemaMetadataDictionary.java @@ -25,7 +25,6 @@ import org.apache.tajo.exception.UndefinedTableException; import org.apache.tajo.catalog.proto.CatalogProtos; import org.apache.tajo.catalog.proto.CatalogProtos.DataFormat; -import org.apache.tajo.util.TUtil; public class InfoSchemaMetadataDictionary { private static final String DATABASE_NAME = "information_schema"; diff --git a/tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/AbstractDBStore.java b/tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/AbstractDBStore.java index cc56cf944a..c2b9529e37 100644 --- a/tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/AbstractDBStore.java +++ b/tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/AbstractDBStore.java @@ -39,7 +39,6 @@ import org.apache.tajo.plan.expr.*; import org.apache.tajo.plan.util.PartitionFilterAlgebraVisitor; import org.apache.tajo.util.Pair; -import org.apache.tajo.util.TUtil; import java.io.IOException; import java.net.URI; diff --git a/tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/XMLCatalogSchemaManager.java b/tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/XMLCatalogSchemaManager.java index 3b8fef335b..ea15c079ea 100644 --- a/tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/XMLCatalogSchemaManager.java +++ b/tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/XMLCatalogSchemaManager.java @@ -24,7 +24,6 @@ import org.apache.tajo.catalog.CatalogUtil; import org.apache.tajo.catalog.store.object.*; import org.apache.tajo.exception.TajoInternalError; -import org.apache.tajo.util.TUtil; import javax.xml.bind.JAXBContext; import javax.xml.bind.JAXBElement; diff --git a/tajo-cli/src/main/java/org/apache/tajo/cli/tools/TajoDump.java b/tajo-cli/src/main/java/org/apache/tajo/cli/tools/TajoDump.java index b541c0355e..4df418f5be 100644 --- a/tajo-cli/src/main/java/org/apache/tajo/cli/tools/TajoDump.java +++ b/tajo-cli/src/main/java/org/apache/tajo/cli/tools/TajoDump.java @@ -28,7 +28,6 @@ import org.apache.tajo.conf.TajoConf; import org.apache.tajo.service.ServiceTrackerFactory; import org.apache.tajo.util.Pair; -import org.apache.tajo.util.TUtil; import java.io.IOException; import java.io.PrintWriter; diff --git a/tajo-common/src/main/java/org/apache/tajo/rule/SelfDiagnosisRuleSession.java b/tajo-common/src/main/java/org/apache/tajo/rule/SelfDiagnosisRuleSession.java index b1a82e6e04..9bb319e6fe 100644 --- a/tajo-common/src/main/java/org/apache/tajo/rule/SelfDiagnosisRuleSession.java +++ b/tajo-common/src/main/java/org/apache/tajo/rule/SelfDiagnosisRuleSession.java @@ -23,7 +23,6 @@ import org.apache.tajo.rule.EvaluationResult.EvaluationResultCode; import org.apache.tajo.rule.SelfDiagnosisRuleEngine.RuleWrapper; -import org.apache.tajo.util.TUtil; public class SelfDiagnosisRuleSession { diff --git a/tajo-common/src/main/java/org/apache/tajo/service/BaseServiceTracker.java b/tajo-common/src/main/java/org/apache/tajo/service/BaseServiceTracker.java index e8cb260416..43f8c32c98 100644 --- a/tajo-common/src/main/java/org/apache/tajo/service/BaseServiceTracker.java +++ b/tajo-common/src/main/java/org/apache/tajo/service/BaseServiceTracker.java @@ -19,11 +19,11 @@ package org.apache.tajo.service; import org.apache.tajo.conf.TajoConf; -import org.apache.tajo.util.TUtil; import java.io.IOException; import java.net.InetSocketAddress; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; public class BaseServiceTracker implements ServiceTracker { @@ -44,8 +44,7 @@ public BaseServiceTracker(TajoConf conf) { tajoMasterInfo.setCatalogAddress(conf.getSocketAddrVar(TajoConf.ConfVars.CATALOG_ADDRESS)); tajoMasterInfo.setWebServerAddress(conf.getSocketAddrVar(TajoConf.ConfVars.TAJO_MASTER_INFO_ADDRESS)); - tajoMasterInfos = new ArrayList<>(); - tajoMasterInfos.add(tajoMasterInfo); + tajoMasterInfos = Arrays.asList(tajoMasterInfo); } @Override diff --git a/tajo-common/src/main/java/org/apache/tajo/validation/PathListValidator.java b/tajo-common/src/main/java/org/apache/tajo/validation/PathListValidator.java index 88fdecd833..5f23608bfb 100644 --- a/tajo-common/src/main/java/org/apache/tajo/validation/PathListValidator.java +++ b/tajo-common/src/main/java/org/apache/tajo/validation/PathListValidator.java @@ -18,8 +18,6 @@ package org.apache.tajo.validation; -import org.apache.tajo.util.TUtil; - import java.util.ArrayList; import java.util.Collection; diff --git a/tajo-common/src/test/java/org/apache/tajo/rule/TestRuleEngine.java b/tajo-common/src/test/java/org/apache/tajo/rule/TestRuleEngine.java index 1396108a7a..ff568bc3d0 100644 --- a/tajo-common/src/test/java/org/apache/tajo/rule/TestRuleEngine.java +++ b/tajo-common/src/test/java/org/apache/tajo/rule/TestRuleEngine.java @@ -38,7 +38,6 @@ import org.apache.tajo.rule.EvaluationResult.EvaluationResultCode; import org.apache.tajo.rule.SelfDiagnosisRuleEngine.RuleWrapper; import org.apache.tajo.util.CommonTestingUtil; -import org.apache.tajo.util.TUtil; import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; diff --git a/tajo-common/src/test/java/org/apache/tajo/rule/TestRuleSession.java b/tajo-common/src/test/java/org/apache/tajo/rule/TestRuleSession.java index 08d15ad7ad..6da5dfadf6 100644 --- a/tajo-common/src/test/java/org/apache/tajo/rule/TestRuleSession.java +++ b/tajo-common/src/test/java/org/apache/tajo/rule/TestRuleSession.java @@ -37,7 +37,6 @@ import org.apache.tajo.rule.EvaluationResult.EvaluationResultCode; import org.apache.tajo.rule.SelfDiagnosisRuleEngine.RuleWrapper; import org.apache.tajo.util.CommonTestingUtil; -import org.apache.tajo.util.TUtil; import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; diff --git a/tajo-common/src/test/java/org/apache/tajo/validation/TestValidators.java b/tajo-common/src/test/java/org/apache/tajo/validation/TestValidators.java index 8db6e3af39..68446acc45 100644 --- a/tajo-common/src/test/java/org/apache/tajo/validation/TestValidators.java +++ b/tajo-common/src/test/java/org/apache/tajo/validation/TestValidators.java @@ -27,7 +27,6 @@ import java.math.MathContext; import java.util.*; -import org.apache.tajo.util.TUtil; import org.hamcrest.Description; import org.hamcrest.Matcher; import org.hamcrest.TypeSafeDiagnosingMatcher; diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/engine/planner/physical/TestPhysicalPlanner.java b/tajo-core-tests/src/test/java/org/apache/tajo/engine/planner/physical/TestPhysicalPlanner.java index 90127f98f1..7febf4f74f 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/engine/planner/physical/TestPhysicalPlanner.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/engine/planner/physical/TestPhysicalPlanner.java @@ -56,7 +56,6 @@ import org.apache.tajo.unit.StorageUnit; import org.apache.tajo.util.CommonTestingUtil; import org.apache.tajo.util.KeyValueSet; -import org.apache.tajo.util.TUtil; import org.apache.tajo.worker.TaskAttemptContext; import org.junit.AfterClass; import org.junit.BeforeClass; diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestGroupByQuery.java b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestGroupByQuery.java index d69f3c9881..ea4a7c8f15 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestGroupByQuery.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestGroupByQuery.java @@ -24,7 +24,6 @@ import org.apache.tajo.conf.TajoConf.ConfVars; import org.apache.tajo.storage.StorageConstants; import org.apache.tajo.util.KeyValueSet; -import org.apache.tajo.util.TUtil; import org.apache.tajo.util.history.QueryHistory; import org.apache.tajo.util.history.StageHistory; import org.junit.AfterClass; diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestHBaseTable.java b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestHBaseTable.java index a23a4fca73..13b7711bb0 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestHBaseTable.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestHBaseTable.java @@ -50,7 +50,6 @@ import org.apache.tajo.storage.hbase.*; import org.apache.tajo.util.Bytes; import org.apache.tajo.util.KeyValueSet; -import org.apache.tajo.util.TUtil; import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java index 04ea201b73..b51c7ee7a8 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java @@ -19,11 +19,9 @@ package org.apache.tajo.engine.query; import org.apache.tajo.QueryTestCaseBase; -import org.apache.tajo.util.TUtil; import org.junit.Test; import java.sql.ResultSet; -import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -44,9 +42,7 @@ public final void testSelect0() throws Exception { @Test public final void testSelect1() throws Exception { List tables = executeDDL("sample1_ddl.sql", "sample1", "sample2"); - List inputList = new ArrayList<>(); - inputList.addAll(Arrays.asList("sample2")); - assertEquals(inputList, tables); + assertEquals(Arrays.asList("sample2"), tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -56,9 +52,7 @@ public final void testSelect1() throws Exception { @Test public final void testSelect2() throws Exception { List tables = executeDDL("tweets_ddl.sql", "tweets", "tweets"); - List inputList = new ArrayList<>(); - inputList.addAll(Arrays.asList("tweets")); - assertEquals(inputList, tables); + assertEquals(Arrays.asList("tweets"), tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -68,9 +62,7 @@ public final void testSelect2() throws Exception { @Test public final void testSelect3() throws Exception { List tables = executeDDL("sample2_ddl.sql", "sample2", "sample5"); - List inputList = new ArrayList<>(); - inputList.addAll(Arrays.asList("sample5")); - assertEquals(inputList, tables); + assertEquals(Arrays.asList("sample5"), tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -81,9 +73,7 @@ public final void testSelect3() throws Exception { public final void testTAJO_1610() throws Exception { executeString("CREATE DATABASE tweets").close(); List tables = executeDDL("tweets_ddl.sql", "tweets", "tweets.tweets"); - List inputList = new ArrayList<>(); - inputList.addAll(Arrays.asList("tweets.tweets")); - assertEquals(inputList, tables); + assertEquals(Arrays.asList("tweets.tweets"), tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -93,9 +83,7 @@ public final void testTAJO_1610() throws Exception { @Test public final void testNestedFieldAsGroupbyKey1() throws Exception { List tables = executeDDL("tweets_ddl.sql", "tweets", "tweets"); - List inputList = new ArrayList<>(); - inputList.addAll(Arrays.asList("tweets")); - assertEquals(inputList, tables); + assertEquals(Arrays.asList("tweets"), tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -105,9 +93,7 @@ public final void testNestedFieldAsGroupbyKey1() throws Exception { @Test public final void testNestedFieldAsJoinKey1() throws Exception { List tables = executeDDL("tweets_ddl.sql", "tweets", "tweets"); - List inputList = new ArrayList<>(); - inputList.addAll(Arrays.asList("tweets")); - assertEquals(inputList, tables); + assertEquals(Arrays.asList("tweets"), tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -118,9 +104,7 @@ public final void testNestedFieldAsJoinKey1() throws Exception { public final void testInsertType1() throws Exception { // all columns List tables = executeDDL("sample1_ddl.sql", "sample1", "sample3"); - List inputList = new ArrayList<>(); - inputList.addAll(Arrays.asList("sample3")); - assertEquals(inputList, tables); + assertEquals(Arrays.asList("sample3"), tables); executeString("CREATE TABLE clone (title TEXT, name RECORD (first_name TEXT, last_name TEXT)) USING JSON;").close(); @@ -134,9 +118,7 @@ public final void testInsertType1() throws Exception { public final void testInsertType2() throws Exception { // some columns List tables = executeDDL("sample1_ddl.sql", "sample1", "sample4"); - List inputList = new ArrayList<>(); - inputList.addAll(Arrays.asList("sample4")); - assertEquals(inputList, tables); + assertEquals(Arrays.asList("sample4"), tables); executeString("CREATE TABLE clone2 (title TEXT, name RECORD (first_name TEXT, last_name TEXT)) USING JSON;").close(); diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/ws/rs/resources/TestQueryResultResource.java b/tajo-core-tests/src/test/java/org/apache/tajo/ws/rs/resources/TestQueryResultResource.java index 66bbf7003b..9e0d83abca 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/ws/rs/resources/TestQueryResultResource.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/ws/rs/resources/TestQueryResultResource.java @@ -25,7 +25,6 @@ import org.apache.tajo.exception.ErrorUtil; import org.apache.tajo.storage.RowStoreUtil; import org.apache.tajo.storage.Tuple; -import org.apache.tajo.util.TUtil; import org.apache.tajo.ws.rs.netty.gson.GsonFeature; import org.apache.tajo.ws.rs.requests.NewSessionRequest; import org.apache.tajo.ws.rs.requests.SubmitQueryRequest; diff --git a/tajo-core/src/main/java/org/apache/tajo/engine/function/FunctionLoader.java b/tajo-core/src/main/java/org/apache/tajo/engine/function/FunctionLoader.java index d5f5738455..d7fbf88d1f 100644 --- a/tajo-core/src/main/java/org/apache/tajo/engine/function/FunctionLoader.java +++ b/tajo-core/src/main/java/org/apache/tajo/engine/function/FunctionLoader.java @@ -40,7 +40,6 @@ import org.apache.tajo.function.*; import org.apache.tajo.plan.function.python.PythonScriptEngine; import org.apache.tajo.util.ClassUtil; -import org.apache.tajo.util.TUtil; import java.io.IOException; import java.lang.reflect.Method; diff --git a/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/rewriter/BaseGlobalPlanRewriteRuleProvider.java b/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/rewriter/BaseGlobalPlanRewriteRuleProvider.java index f829ad797b..6be4d14314 100644 --- a/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/rewriter/BaseGlobalPlanRewriteRuleProvider.java +++ b/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/rewriter/BaseGlobalPlanRewriteRuleProvider.java @@ -21,7 +21,6 @@ import com.google.common.collect.Lists; import org.apache.tajo.conf.TajoConf; import org.apache.tajo.engine.planner.global.rewriter.rules.BroadcastJoinRule; -import org.apache.tajo.util.TUtil; import java.util.ArrayList; import java.util.Collection; diff --git a/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/rewriter/rules/BroadcastJoinRule.java b/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/rewriter/rules/BroadcastJoinRule.java index c6f4817e9b..a19704bf20 100644 --- a/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/rewriter/rules/BroadcastJoinRule.java +++ b/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/rewriter/rules/BroadcastJoinRule.java @@ -33,7 +33,6 @@ import org.apache.tajo.plan.logical.*; import org.apache.tajo.plan.util.PlannerUtil; import org.apache.tajo.unit.StorageUnit; -import org.apache.tajo.util.TUtil; import org.apache.tajo.util.graph.DirectedGraphVisitor; import java.util.*; diff --git a/tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/DistinctGroupbyHashAggregationExec.java b/tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/DistinctGroupbyHashAggregationExec.java index 39eb5b0a7c..8c860dcd8a 100644 --- a/tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/DistinctGroupbyHashAggregationExec.java +++ b/tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/DistinctGroupbyHashAggregationExec.java @@ -32,7 +32,6 @@ import org.apache.tajo.storage.NullTuple; import org.apache.tajo.storage.Tuple; import org.apache.tajo.storage.VTuple; -import org.apache.tajo.util.TUtil; import org.apache.tajo.worker.TaskAttemptContext; import java.io.IOException; diff --git a/tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/ExternalSortExec.java b/tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/ExternalSortExec.java index 8920a155b3..0e89928071 100644 --- a/tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/ExternalSortExec.java +++ b/tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/ExternalSortExec.java @@ -49,7 +49,6 @@ import org.apache.tajo.tuple.memory.UnSafeTupleList; import org.apache.tajo.unit.StorageUnit; import org.apache.tajo.util.FileUtil; -import org.apache.tajo.util.TUtil; import org.apache.tajo.worker.TaskAttemptContext; import java.io.File; diff --git a/tajo-core/src/main/java/org/apache/tajo/ha/HdfsServiceTracker.java b/tajo-core/src/main/java/org/apache/tajo/ha/HdfsServiceTracker.java index a6682fe7b5..120d61cd58 100644 --- a/tajo-core/src/main/java/org/apache/tajo/ha/HdfsServiceTracker.java +++ b/tajo-core/src/main/java/org/apache/tajo/ha/HdfsServiceTracker.java @@ -33,7 +33,6 @@ import org.apache.tajo.service.ServiceTrackerException; import org.apache.tajo.service.TajoMasterInfo; import org.apache.tajo.util.FileUtil; -import org.apache.tajo.util.TUtil; import java.io.IOException; import java.net.InetSocketAddress; diff --git a/tajo-core/src/main/java/org/apache/tajo/master/exec/DDLExecutor.java b/tajo-core/src/main/java/org/apache/tajo/master/exec/DDLExecutor.java index 898d351ee2..7a52acc3fe 100644 --- a/tajo-core/src/main/java/org/apache/tajo/master/exec/DDLExecutor.java +++ b/tajo-core/src/main/java/org/apache/tajo/master/exec/DDLExecutor.java @@ -48,7 +48,6 @@ import org.apache.tajo.storage.TablespaceManager; import org.apache.tajo.util.Pair; import org.apache.tajo.util.StringUtils; -import org.apache.tajo.util.TUtil; import java.io.File; import java.io.IOException; diff --git a/tajo-core/src/main/java/org/apache/tajo/master/exec/NonForwardQueryResultSystemScanner.java b/tajo-core/src/main/java/org/apache/tajo/master/exec/NonForwardQueryResultSystemScanner.java index c3387a8960..d627064d74 100644 --- a/tajo-core/src/main/java/org/apache/tajo/master/exec/NonForwardQueryResultSystemScanner.java +++ b/tajo-core/src/main/java/org/apache/tajo/master/exec/NonForwardQueryResultSystemScanner.java @@ -60,7 +60,6 @@ import org.apache.tajo.tuple.memory.MemoryBlock; import org.apache.tajo.tuple.memory.MemoryRowBlock; import org.apache.tajo.util.KeyValueSet; -import org.apache.tajo.util.TUtil; import org.apache.tajo.worker.TaskAttemptContext; import java.io.IOException; diff --git a/tajo-core/src/main/java/org/apache/tajo/querymaster/Query.java b/tajo-core/src/main/java/org/apache/tajo/querymaster/Query.java index a39e943118..599931df3e 100644 --- a/tajo-core/src/main/java/org/apache/tajo/querymaster/Query.java +++ b/tajo-core/src/main/java/org/apache/tajo/querymaster/Query.java @@ -50,7 +50,6 @@ import org.apache.tajo.storage.StorageConstants; import org.apache.tajo.storage.Tablespace; import org.apache.tajo.storage.TablespaceManager; -import org.apache.tajo.util.TUtil; import org.apache.tajo.util.history.QueryHistory; import org.apache.tajo.util.history.StageHistory; diff --git a/tajo-core/src/main/java/org/apache/tajo/worker/TaskAttemptContext.java b/tajo-core/src/main/java/org/apache/tajo/worker/TaskAttemptContext.java index 0fff8650c0..d56b6b4732 100644 --- a/tajo-core/src/main/java/org/apache/tajo/worker/TaskAttemptContext.java +++ b/tajo-core/src/main/java/org/apache/tajo/worker/TaskAttemptContext.java @@ -39,7 +39,6 @@ import org.apache.tajo.storage.fragment.FileFragment; import org.apache.tajo.storage.fragment.Fragment; import org.apache.tajo.storage.fragment.FragmentConvertor; -import org.apache.tajo.util.TUtil; import org.apache.tajo.worker.TajoWorker.WorkerContext; import java.io.File; diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalOptimizer.java b/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalOptimizer.java index 73d031053c..23f8584e1c 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalOptimizer.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalOptimizer.java @@ -41,7 +41,6 @@ import org.apache.tajo.plan.visitor.BasicLogicalPlanVisitor; import org.apache.tajo.storage.StorageService; import org.apache.tajo.util.ReflectionUtil; -import org.apache.tajo.util.TUtil; import org.apache.tajo.util.graph.DirectedGraphCursor; import java.util.*; diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlanner.java b/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlanner.java index c458f3fd7f..50ab2e02fd 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlanner.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlanner.java @@ -52,7 +52,6 @@ import org.apache.tajo.util.KeyValueSet; import org.apache.tajo.util.Pair; import org.apache.tajo.util.StringUtils; -import org.apache.tajo.util.TUtil; import java.net.URI; import java.util.*; diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/expr/AlgebraicUtil.java b/tajo-plan/src/main/java/org/apache/tajo/plan/expr/AlgebraicUtil.java index ddc694bdfb..3fe78c277b 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/expr/AlgebraicUtil.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/expr/AlgebraicUtil.java @@ -25,7 +25,6 @@ import org.apache.tajo.exception.TajoException; import org.apache.tajo.plan.util.ExprFinder; import org.apache.tajo.plan.visitor.SimpleAlgebraVisitor; -import org.apache.tajo.util.TUtil; import java.util.*; diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/expr/EvalTreeUtil.java b/tajo-plan/src/main/java/org/apache/tajo/plan/expr/EvalTreeUtil.java index b2a20f5aa1..3318d35556 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/expr/EvalTreeUtil.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/expr/EvalTreeUtil.java @@ -33,7 +33,6 @@ import org.apache.tajo.plan.LogicalPlan; import org.apache.tajo.plan.Target; import org.apache.tajo.plan.util.ExprFinder; -import org.apache.tajo.util.TUtil; import java.util.*; diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/function/python/PythonScriptEngine.java b/tajo-plan/src/main/java/org/apache/tajo/plan/function/python/PythonScriptEngine.java index d1f6b2f977..0a900ccd6b 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/function/python/PythonScriptEngine.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/function/python/PythonScriptEngine.java @@ -40,7 +40,6 @@ import org.apache.tajo.storage.VTuple; import org.apache.tajo.unit.StorageUnit; import org.apache.tajo.util.FileUtil; -import org.apache.tajo.util.TUtil; import java.io.*; import java.net.URI; diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/function/stream/StreamingUtil.java b/tajo-plan/src/main/java/org/apache/tajo/plan/function/stream/StreamingUtil.java index 6683ec099f..1f6e2affa7 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/function/stream/StreamingUtil.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/function/stream/StreamingUtil.java @@ -20,7 +20,6 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.apache.tajo.util.TUtil; import java.io.File; import java.util.ArrayList; diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/nameresolver/NameResolver.java b/tajo-plan/src/main/java/org/apache/tajo/plan/nameresolver/NameResolver.java index 7b55b5db56..cbe93d2d61 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/nameresolver/NameResolver.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/nameresolver/NameResolver.java @@ -33,7 +33,6 @@ import org.apache.tajo.plan.logical.ScanNode; import org.apache.tajo.util.Pair; import org.apache.tajo.util.StringUtils; -import org.apache.tajo.util.TUtil; import java.util.*; diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/nameresolver/ResolverByLegacy.java b/tajo-plan/src/main/java/org/apache/tajo/plan/nameresolver/ResolverByLegacy.java index 8c366e54ee..343b9abfde 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/nameresolver/ResolverByLegacy.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/nameresolver/ResolverByLegacy.java @@ -30,7 +30,6 @@ import org.apache.tajo.plan.logical.NodeType; import org.apache.tajo.plan.logical.RelationNode; import org.apache.tajo.util.Pair; -import org.apache.tajo.util.TUtil; import java.util.ArrayList; import java.util.List; diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/BaseLogicalPlanPreprocessPhaseProvider.java b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/BaseLogicalPlanPreprocessPhaseProvider.java index a029167668..80805d89d9 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/BaseLogicalPlanPreprocessPhaseProvider.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/BaseLogicalPlanPreprocessPhaseProvider.java @@ -18,8 +18,6 @@ package org.apache.tajo.plan.rewrite; -import org.apache.tajo.util.TUtil; - import java.util.ArrayList; import java.util.Collection; import java.util.List; diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/BaseLogicalPlanRewriteRuleProvider.java b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/BaseLogicalPlanRewriteRuleProvider.java index 90e4c02eef..68df282849 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/BaseLogicalPlanRewriteRuleProvider.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/BaseLogicalPlanRewriteRuleProvider.java @@ -20,7 +20,6 @@ import org.apache.tajo.conf.TajoConf; import org.apache.tajo.plan.rewrite.rules.*; -import org.apache.tajo.util.TUtil; import java.util.ArrayList; import java.util.Collection; diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/BaseSchemaBuildPhase.java b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/BaseSchemaBuildPhase.java index 572ce503d6..99921c3817 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/BaseSchemaBuildPhase.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/BaseSchemaBuildPhase.java @@ -36,7 +36,6 @@ import org.apache.tajo.plan.nameresolver.NameResolvingMode; import org.apache.tajo.plan.util.PlannerUtil; import org.apache.tajo.plan.visitor.SimpleAlgebraVisitor; -import org.apache.tajo.util.TUtil; import java.util.*; diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/FilterPushDownRule.java b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/FilterPushDownRule.java index 7187fdc96a..36d91bd750 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/FilterPushDownRule.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/FilterPushDownRule.java @@ -42,7 +42,6 @@ import org.apache.tajo.plan.rewrite.rules.IndexScanInfo.SimplePredicate; import org.apache.tajo.plan.util.PlannerUtil; import org.apache.tajo.plan.visitor.BasicLogicalPlanVisitor; -import org.apache.tajo.util.TUtil; import java.util.*; diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/InSubqueryRewriteRule.java b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/InSubqueryRewriteRule.java index cfa48b4b1e..979c9d77a5 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/InSubqueryRewriteRule.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/InSubqueryRewriteRule.java @@ -32,7 +32,6 @@ import org.apache.tajo.plan.rewrite.LogicalPlanRewriteRuleContext; import org.apache.tajo.plan.util.PlannerUtil; import org.apache.tajo.plan.visitor.BasicLogicalPlanVisitor; -import org.apache.tajo.util.TUtil; import java.util.*; diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/serder/LogicalNodeSerializer.java b/tajo-plan/src/main/java/org/apache/tajo/plan/serder/LogicalNodeSerializer.java index 5ef377ef6c..e7247688f8 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/serder/LogicalNodeSerializer.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/serder/LogicalNodeSerializer.java @@ -40,7 +40,6 @@ import org.apache.tajo.plan.serder.PlanProto.LogicalNodeTree; import org.apache.tajo.plan.visitor.BasicLogicalPlanVisitor; import org.apache.tajo.util.ProtoUtil; -import org.apache.tajo.util.TUtil; import java.util.ArrayList; import java.util.List; diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/util/ExprFinder.java b/tajo-plan/src/main/java/org/apache/tajo/plan/util/ExprFinder.java index 39fccc2c6b..4e23c9218c 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/util/ExprFinder.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/util/ExprFinder.java @@ -25,9 +25,12 @@ import org.apache.tajo.exception.TajoException; import org.apache.tajo.exception.TajoInternalError; import org.apache.tajo.plan.visitor.SimpleAlgebraVisitor; -import org.apache.tajo.util.TUtil; -import java.util.*; +import java.util.ArrayList; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.Stack; public class ExprFinder extends SimpleAlgebraVisitor { diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/util/PartitionFilterAlgebraVisitor.java b/tajo-plan/src/main/java/org/apache/tajo/plan/util/PartitionFilterAlgebraVisitor.java index f81b21f5e8..7759280acc 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/util/PartitionFilterAlgebraVisitor.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/util/PartitionFilterAlgebraVisitor.java @@ -29,7 +29,6 @@ import org.apache.tajo.plan.ExprAnnotator; import org.apache.tajo.plan.visitor.SimpleAlgebraVisitor; import org.apache.tajo.util.Pair; -import org.apache.tajo.util.TUtil; import org.apache.tajo.util.datetime.DateTimeUtil; import org.apache.tajo.util.datetime.TimeMeta; diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/util/PlannerUtil.java b/tajo-plan/src/main/java/org/apache/tajo/plan/util/PlannerUtil.java index 05229bd6c2..239becccbb 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/util/PlannerUtil.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/util/PlannerUtil.java @@ -38,7 +38,6 @@ import org.apache.tajo.plan.visitor.SimpleAlgebraVisitor; import org.apache.tajo.util.KeyValueSet; import org.apache.tajo.util.StringUtils; -import org.apache.tajo.util.TUtil; import java.util.*; diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/verifier/PostLogicalPlanVerifier.java b/tajo-plan/src/main/java/org/apache/tajo/plan/verifier/PostLogicalPlanVerifier.java index e1f0e2ea97..9ded584815 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/verifier/PostLogicalPlanVerifier.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/verifier/PostLogicalPlanVerifier.java @@ -27,7 +27,6 @@ import org.apache.tajo.plan.verifier.PostLogicalPlanVerifier.Context; import org.apache.tajo.plan.visitor.BasicLogicalPlanVisitor; import org.apache.tajo.unit.StorageUnit; -import org.apache.tajo.util.TUtil; import java.util.ArrayList; import java.util.List; diff --git a/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestMergeScanner.java b/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestMergeScanner.java index 252f4215dd..d8d335989a 100644 --- a/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestMergeScanner.java +++ b/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestMergeScanner.java @@ -33,7 +33,6 @@ import org.apache.tajo.storage.fragment.Fragment; import org.apache.tajo.util.CommonTestingUtil; import org.apache.tajo.util.KeyValueSet; -import org.apache.tajo.util.TUtil; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -41,10 +40,8 @@ import org.junit.runners.Parameterized.Parameters; import java.io.IOException; -import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; -import java.util.List; import static org.junit.Assert.*; diff --git a/tajo-storage/tajo-storage-jdbc/src/main/java/org/apache/tajo/storage/jdbc/JdbcFragment.java b/tajo-storage/tajo-storage-jdbc/src/main/java/org/apache/tajo/storage/jdbc/JdbcFragment.java index ef48958312..0088504c5a 100644 --- a/tajo-storage/tajo-storage-jdbc/src/main/java/org/apache/tajo/storage/jdbc/JdbcFragment.java +++ b/tajo-storage/tajo-storage-jdbc/src/main/java/org/apache/tajo/storage/jdbc/JdbcFragment.java @@ -23,11 +23,8 @@ import org.apache.tajo.catalog.proto.CatalogProtos; import org.apache.tajo.storage.fragment.Fragment; import org.apache.tajo.storage.jdbc.JdbcFragmentProtos.JdbcFragmentProto; -import org.apache.tajo.util.TUtil; -import java.util.ArrayList; import java.util.Arrays; -import java.util.List; public class JdbcFragment implements Fragment, Comparable, Cloneable { String uri; From bff66b2100bca1fcaed7239abf0f38444dce6137 Mon Sep 17 00:00:00 2001 From: Dongkyu Hwangbo Date: Mon, 14 Dec 2015 15:59:15 +0900 Subject: [PATCH 06/12] to fix internal error --- .../tajo/function/FunctionSignature.java | 3 ++- .../tajo/service/BaseServiceTracker.java | 2 +- .../planner/physical/TestPhysicalPlanner.java | 8 ++------ .../tajo/engine/query/TestGroupByQuery.java | 2 +- .../tajo/engine/query/TestHBaseTable.java | 2 +- .../engine/query/TestSelectNestedRecord.java | 19 ++++++++++--------- .../engine/planner/PhysicalPlannerImpl.java | 2 +- .../apache/tajo/ha/HdfsServiceTracker.java | 2 +- .../tajo/querymaster/Repartitioner.java | 10 +++++----- .../org/apache/tajo/plan/ExprAnnotator.java | 2 +- .../rewrite/rules/ProjectionPushDownRule.java | 6 +++--- .../tajo/storage/fragment/FileFragment.java | 2 +- .../apache/tajo/storage/TestMergeScanner.java | 3 ++- .../tajo/storage/jdbc/JdbcFragment.java | 3 ++- 14 files changed, 33 insertions(+), 33 deletions(-) diff --git a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java index bf37647894..e87ad3e56d 100644 --- a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java +++ b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java @@ -24,6 +24,7 @@ import org.apache.tajo.common.ProtoObject; import org.apache.tajo.util.TUtil; +import java.util.ArrayList; import java.util.Arrays; import static org.apache.tajo.catalog.proto.CatalogProtos.FunctionSignatureProto; @@ -111,7 +112,7 @@ public FunctionSignatureProto getProto() { FunctionSignatureProto.Builder builder = FunctionSignatureProto.newBuilder(); builder.setType(functionType); builder.setName(name); - builder.addAllParameterTypes(Arrays.asList(paramTypes)); + builder.addAllParameterTypes(new ArrayList<>(Arrays.asList(paramTypes))); builder.setReturnType(returnType); return builder.build(); } diff --git a/tajo-common/src/main/java/org/apache/tajo/service/BaseServiceTracker.java b/tajo-common/src/main/java/org/apache/tajo/service/BaseServiceTracker.java index 43f8c32c98..9c17e315f1 100644 --- a/tajo-common/src/main/java/org/apache/tajo/service/BaseServiceTracker.java +++ b/tajo-common/src/main/java/org/apache/tajo/service/BaseServiceTracker.java @@ -44,7 +44,7 @@ public BaseServiceTracker(TajoConf conf) { tajoMasterInfo.setCatalogAddress(conf.getSocketAddrVar(TajoConf.ConfVars.CATALOG_ADDRESS)); tajoMasterInfo.setWebServerAddress(conf.getSocketAddrVar(TajoConf.ConfVars.TAJO_MASTER_INFO_ADDRESS)); - tajoMasterInfos = Arrays.asList(tajoMasterInfo); + tajoMasterInfos = new ArrayList<>(Arrays.asList(tajoMasterInfo)); } @Override diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/engine/planner/physical/TestPhysicalPlanner.java b/tajo-core-tests/src/test/java/org/apache/tajo/engine/planner/physical/TestPhysicalPlanner.java index 7febf4f74f..25283991a4 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/engine/planner/physical/TestPhysicalPlanner.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/engine/planner/physical/TestPhysicalPlanner.java @@ -744,9 +744,7 @@ public final void testPartitionedStorePlanWithMaxFileSize() throws IOException, assertEquals(expectedFileNum, fileStatuses.length); } TableMeta outputMeta = CatalogUtil.newTableMeta("TEXT"); - List inputList = new ArrayList<>(); - inputList.addAll(fragments); - Scanner scanner = new MergeScanner(conf, rootNode.getOutSchema(), outputMeta, inputList); + Scanner scanner = new MergeScanner(conf, rootNode.getOutSchema(), outputMeta, new ArrayList<>(fragments)); scanner.init(); long rowNum = 0; @@ -810,9 +808,7 @@ public final void testPartitionedStorePlanWithEmptyGroupingSet() assertEquals(numPartitions, fragments.size()); - List inputList = new ArrayList<>(); - inputList.addAll(fragments); - Scanner scanner = new MergeScanner(conf, rootNode.getOutSchema(), outputMeta, inputList); + Scanner scanner = new MergeScanner(conf, rootNode.getOutSchema(), outputMeta, new ArrayList<>(fragments)); scanner.init(); Tuple tuple; int i = 0; diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestGroupByQuery.java b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestGroupByQuery.java index ea4a7c8f15..36b40003b6 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestGroupByQuery.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestGroupByQuery.java @@ -57,7 +57,7 @@ public TestGroupByQuery(String groupByOption) throws Exception { @AfterClass public static void tearDown() throws Exception { - client.unsetSessionVariables(Arrays.asList(SessionVars.GROUPBY_MULTI_LEVEL_ENABLED.keyname())); + client.unsetSessionVariables(new ArrayList<>(Arrays.asList(SessionVars.GROUPBY_MULTI_LEVEL_ENABLED.keyname()))); } @Parameters diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestHBaseTable.java b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestHBaseTable.java index 13b7711bb0..e27d057d5d 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestHBaseTable.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestHBaseTable.java @@ -1311,7 +1311,7 @@ public void testInsertIntoUsingPut() throws Exception { } finally { executeString("DROP TABLE hbase_mapped_table PURGE").close(); - client.unsetSessionVariables(Arrays.asList(HBaseStorageConstants.INSERT_PUT_MODE)); + client.unsetSessionVariables(new ArrayList<>(Arrays.asList(HBaseStorageConstants.INSERT_PUT_MODE))); if (scanner != null) { scanner.close(); diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java index b51c7ee7a8..e8fcc52c06 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java @@ -22,6 +22,7 @@ import org.junit.Test; import java.sql.ResultSet; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -32,7 +33,7 @@ public class TestSelectNestedRecord extends QueryTestCaseBase { @Test public final void testSelect0() throws Exception { List tables = executeDDL("sample1_ddl.sql", "sample1", "sample1"); - assertEquals(Arrays.asList("sample1"), tables); + assertEquals(new ArrayList<>(Arrays.asList("sample1")), tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -42,7 +43,7 @@ public final void testSelect0() throws Exception { @Test public final void testSelect1() throws Exception { List tables = executeDDL("sample1_ddl.sql", "sample1", "sample2"); - assertEquals(Arrays.asList("sample2"), tables); + assertEquals(new ArrayList<>(Arrays.asList("sample2")), tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -52,7 +53,7 @@ public final void testSelect1() throws Exception { @Test public final void testSelect2() throws Exception { List tables = executeDDL("tweets_ddl.sql", "tweets", "tweets"); - assertEquals(Arrays.asList("tweets"), tables); + assertEquals(new ArrayList<>(Arrays.asList("tweets")), tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -62,7 +63,7 @@ public final void testSelect2() throws Exception { @Test public final void testSelect3() throws Exception { List tables = executeDDL("sample2_ddl.sql", "sample2", "sample5"); - assertEquals(Arrays.asList("sample5"), tables); + assertEquals(new ArrayList<>(Arrays.asList("sample5")), tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -73,7 +74,7 @@ public final void testSelect3() throws Exception { public final void testTAJO_1610() throws Exception { executeString("CREATE DATABASE tweets").close(); List tables = executeDDL("tweets_ddl.sql", "tweets", "tweets.tweets"); - assertEquals(Arrays.asList("tweets.tweets"), tables); + assertEquals(new ArrayList<>(Arrays.asList("tweets.tweets")), tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -83,7 +84,7 @@ public final void testTAJO_1610() throws Exception { @Test public final void testNestedFieldAsGroupbyKey1() throws Exception { List tables = executeDDL("tweets_ddl.sql", "tweets", "tweets"); - assertEquals(Arrays.asList("tweets"), tables); + assertEquals(new ArrayList<>(Arrays.asList("tweets")), tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -93,7 +94,7 @@ public final void testNestedFieldAsGroupbyKey1() throws Exception { @Test public final void testNestedFieldAsJoinKey1() throws Exception { List tables = executeDDL("tweets_ddl.sql", "tweets", "tweets"); - assertEquals(Arrays.asList("tweets"), tables); + assertEquals(new ArrayList<>(Arrays.asList("tweets")), tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -104,7 +105,7 @@ public final void testNestedFieldAsJoinKey1() throws Exception { public final void testInsertType1() throws Exception { // all columns List tables = executeDDL("sample1_ddl.sql", "sample1", "sample3"); - assertEquals(Arrays.asList("sample3"), tables); + assertEquals(new ArrayList<>(Arrays.asList("sample3")), tables); executeString("CREATE TABLE clone (title TEXT, name RECORD (first_name TEXT, last_name TEXT)) USING JSON;").close(); @@ -118,7 +119,7 @@ public final void testInsertType1() throws Exception { public final void testInsertType2() throws Exception { // some columns List tables = executeDDL("sample1_ddl.sql", "sample1", "sample4"); - assertEquals(Arrays.asList("sample4"), tables); + assertEquals(new ArrayList<>(Arrays.asList("sample4")), tables); executeString("CREATE TABLE clone2 (title TEXT, name RECORD (first_name TEXT, last_name TEXT)) USING JSON;").close(); diff --git a/tajo-core/src/main/java/org/apache/tajo/engine/planner/PhysicalPlannerImpl.java b/tajo-core/src/main/java/org/apache/tajo/engine/planner/PhysicalPlannerImpl.java index 8bc935ba55..739147efb1 100644 --- a/tajo-core/src/main/java/org/apache/tajo/engine/planner/PhysicalPlannerImpl.java +++ b/tajo-core/src/main/java/org/apache/tajo/engine/planner/PhysicalPlannerImpl.java @@ -933,7 +933,7 @@ public PhysicalExec createScanPlan(TaskAttemptContext ctx, ScanNode scanNode, St FileTablespace space = (FileTablespace) TablespaceManager.get(scanNode.getTableDesc().getUri()); for (Path path : partitionedTableScanNode.getInputPaths()) { - fileFragments.addAll(Arrays.asList(space.split(scanNode.getCanonicalName(), path))); + fileFragments.addAll(new ArrayList<>(Arrays.asList(space.split(scanNode.getCanonicalName(), path)))); } FragmentProto[] fragments = diff --git a/tajo-core/src/main/java/org/apache/tajo/ha/HdfsServiceTracker.java b/tajo-core/src/main/java/org/apache/tajo/ha/HdfsServiceTracker.java index 120d61cd58..4a9fa12562 100644 --- a/tajo-core/src/main/java/org/apache/tajo/ha/HdfsServiceTracker.java +++ b/tajo-core/src/main/java/org/apache/tajo/ha/HdfsServiceTracker.java @@ -501,7 +501,7 @@ private synchronized List getAddressElements() throws ServiceTrackerExce FSDataInputStream stream = fs.open(activeMasterEntry); String data = stream.readUTF(); stream.close(); - addressElements.addAll(Arrays.asList(data.split("_"))); // Add remains entries to elements + addressElements.addAll(new ArrayList<>(Arrays.asList(data.split("_")))); // Add remains entries to elements // ensure the number of entries Preconditions.checkState(addressElements.size() == 5, "Fewer service addresses than necessary."); diff --git a/tajo-core/src/main/java/org/apache/tajo/querymaster/Repartitioner.java b/tajo-core/src/main/java/org/apache/tajo/querymaster/Repartitioner.java index 57a8268810..ac115728fc 100644 --- a/tajo-core/src/main/java/org/apache/tajo/querymaster/Repartitioner.java +++ b/tajo-core/src/main/java/org/apache/tajo/querymaster/Repartitioner.java @@ -321,12 +321,12 @@ private static void scheduleSymmetricRepartitionJoin(QueryMasterTask.QueryMaster if (tbNameToInterm.containsKey(scanEbId)) { tbNameToInterm.get(scanEbId).add(intermediateEntry); } else { - tbNameToInterm.put(scanEbId, Arrays.asList(intermediateEntry)); + tbNameToInterm.put(scanEbId, new ArrayList<>(Arrays.asList(intermediateEntry))); } } else { Map> tbNameToInterm = new HashMap<>(); - tbNameToInterm.put(scanEbId, Arrays.asList(intermediateEntry)); + tbNameToInterm.put(scanEbId, new ArrayList<>(Arrays.asList(intermediateEntry))); hashEntries.put(intermediateEntry.getPartId(), tbNameToInterm); } } @@ -1078,7 +1078,7 @@ public static List> splitOrMergeIntermediates(@NotNull String fetchListVolume = 0; } FetchImpl fetch = new FetchImpl(fetchName, currentInterm.getPullHost(), SCATTERED_HASH_SHUFFLE, - ebId, currentInterm.getPartId(), Arrays.asList(currentInterm)); + ebId, currentInterm.getPartId(), new ArrayList<>(Arrays.asList(currentInterm))); fetch.setOffset(eachSplit.getFirst()); fetch.setLength(eachSplit.getSecond()); fetchListForSingleTask.add(fetch.getProto()); @@ -1219,7 +1219,7 @@ public static Map> hashByKey(List(Arrays.asList(entry))); } } @@ -1235,7 +1235,7 @@ public static Map> hashByHost(List(Arrays.asList(entry))); } } diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/ExprAnnotator.java b/tajo-plan/src/main/java/org/apache/tajo/plan/ExprAnnotator.java index 3e14200b94..47aef47eab 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/ExprAnnotator.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/ExprAnnotator.java @@ -594,7 +594,7 @@ public EvalNode visitFunction(Context ctx, Stack stack, FunctionExpr expr) FunctionDesc funcDesc = catalog.getFunction(expr.getSignature(), paramTypes); // trying the implicit type conversion between actual parameter types and the definition types. - if (CatalogUtil.checkIfVariableLengthParamDefinition(Arrays.asList(funcDesc.getParamTypes()))) { + if (CatalogUtil.checkIfVariableLengthParamDefinition(new ArrayList<>(Arrays.asList(funcDesc.getParamTypes())))) { DataType lastDataType = funcDesc.getParamTypes()[0]; for (int i = 0; i < givenArgs.length; i++) { if (i < (funcDesc.getParamTypes().length - 1)) { // variable length diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/ProjectionPushDownRule.java b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/ProjectionPushDownRule.java index ce083f1c98..47476e112f 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/ProjectionPushDownRule.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/ProjectionPushDownRule.java @@ -689,7 +689,7 @@ public LogicalNode visitWindowAgg(Context context, LogicalPlan plan, LogicalPlan if (node.hasAggFunctions() && aggEvalNames != null) { WindowFunctionEval [] aggEvals = new WindowFunctionEval[aggEvalNames.length]; int i = 0; - for (Iterator it = getFilteredReferences(aggEvalNames, Arrays.asList(aggEvalNames)); it.hasNext();) { + for (Iterator it = getFilteredReferences(aggEvalNames, new ArrayList<>(Arrays.asList(aggEvalNames))); it.hasNext();) { String referenceName = it.next(); Target target = context.targetListMgr.getTarget(referenceName); @@ -795,7 +795,7 @@ public LogicalNode visitGroupBy(Context context, LogicalPlan plan, LogicalPlan.Q // Getting projected targets if (node.hasAggFunctions() && aggEvalNames != null) { List aggEvals = new ArrayList<>(); - for (Iterator it = getFilteredReferences(aggEvalNames, Arrays.asList(aggEvalNames)); it.hasNext();) { + for (Iterator it = getFilteredReferences(aggEvalNames, new ArrayList<>(Arrays.asList(aggEvalNames))); it.hasNext();) { String referenceName = it.next(); Target target = context.targetListMgr.getTarget(referenceName); @@ -962,7 +962,7 @@ static Iterator getFilteredReferences(Collection targetNames, Se } static Iterator getFilteredReferences(String [] targetNames, Collection required) { - return new FilteredStringsIterator(Arrays.asList(targetNames), required); + return new FilteredStringsIterator(new ArrayList<>(Arrays.asList(targetNames)), required); } static class FilteredStringsIterator implements Iterator { diff --git a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/fragment/FileFragment.java b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/fragment/FileFragment.java index 8f18c7a0f0..9ba83ec376 100644 --- a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/fragment/FileFragment.java +++ b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/fragment/FileFragment.java @@ -226,7 +226,7 @@ public FragmentProto getProto() { } if(hosts != null) { - builder.addAllHosts(Arrays.asList(hosts)); + builder.addAllHosts(new ArrayList<>(Arrays.asList(hosts))); } FragmentProto.Builder fragmentBuilder = FragmentProto.newBuilder(); diff --git a/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestMergeScanner.java b/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestMergeScanner.java index d8d335989a..881f80dc2c 100644 --- a/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestMergeScanner.java +++ b/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestMergeScanner.java @@ -40,6 +40,7 @@ import org.junit.runners.Parameterized.Parameters; import java.io.IOException; +import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; @@ -164,7 +165,7 @@ public void testMultipleFiles() throws IOException { targetSchema.addColumn(schema.getColumn(0)); targetSchema.addColumn(schema.getColumn(2)); - Scanner scanner = new MergeScanner(conf, schema, meta, Arrays.asList(fragment), targetSchema); + Scanner scanner = new MergeScanner(conf, schema, meta, new ArrayList<>(Arrays.asList(fragment)), targetSchema); assertEquals(isProjectableStorage(meta.getDataFormat()), scanner.isProjectable()); scanner.init(); diff --git a/tajo-storage/tajo-storage-jdbc/src/main/java/org/apache/tajo/storage/jdbc/JdbcFragment.java b/tajo-storage/tajo-storage-jdbc/src/main/java/org/apache/tajo/storage/jdbc/JdbcFragment.java index 0088504c5a..c3906684c1 100644 --- a/tajo-storage/tajo-storage-jdbc/src/main/java/org/apache/tajo/storage/jdbc/JdbcFragment.java +++ b/tajo-storage/tajo-storage-jdbc/src/main/java/org/apache/tajo/storage/jdbc/JdbcFragment.java @@ -24,6 +24,7 @@ import org.apache.tajo.storage.fragment.Fragment; import org.apache.tajo.storage.jdbc.JdbcFragmentProtos.JdbcFragmentProto; +import java.util.ArrayList; import java.util.Arrays; public class JdbcFragment implements Fragment, Comparable, Cloneable { @@ -90,7 +91,7 @@ public CatalogProtos.FragmentProto getProto() { builder.setInputSourceId(this.inputSourceId); builder.setUri(this.uri); if(hostNames != null) { - builder.addAllHosts(Arrays.asList(hostNames)); + builder.addAllHosts(new ArrayList<>(Arrays.asList(hostNames))); } CatalogProtos.FragmentProto.Builder fragmentBuilder = CatalogProtos.FragmentProto.newBuilder(); From 1c09b60a89570b71193ed425c45c3ae565947ac6 Mon Sep 17 00:00:00 2001 From: Dongkyu Hwangbo Date: Mon, 14 Dec 2015 16:07:53 +0900 Subject: [PATCH 07/12] rebase --- .../java/org/apache/tajo/storage/hbase/HBaseTablespace.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tajo-storage/tajo-storage-hbase/src/main/java/org/apache/tajo/storage/hbase/HBaseTablespace.java b/tajo-storage/tajo-storage-hbase/src/main/java/org/apache/tajo/storage/hbase/HBaseTablespace.java index 66138e3d52..c79de33154 100644 --- a/tajo-storage/tajo-storage-hbase/src/main/java/org/apache/tajo/storage/hbase/HBaseTablespace.java +++ b/tajo-storage/tajo-storage-hbase/src/main/java/org/apache/tajo/storage/hbase/HBaseTablespace.java @@ -73,8 +73,8 @@ public class HBaseTablespace extends Tablespace { new StorageProperty("hbase", false, true, false, false); public static final FormatProperty HFILE_FORMAT_PROPERTIES = new FormatProperty(true, false, true); public static final FormatProperty PUT_MODE_PROPERTIES = new FormatProperty(true, true, false); - public static final List EMPTY_START_ROW_KEY = TUtil.newList(new byte [0]); - public static final List EMPTY_END_ROW_KEY = TUtil.newList(new byte [0]); + public static final List EMPTY_START_ROW_KEY = Arrays.asList(new byte [0]); + public static final List EMPTY_END_ROW_KEY = Arrays.asList(new byte [0]); private Configuration hbaseConf; From d1cd7ec8844586024bbc8c37c6b5097eba9fb5ea Mon Sep 17 00:00:00 2001 From: Dongkyu Hwangbo Date: Mon, 14 Dec 2015 16:37:06 +0900 Subject: [PATCH 08/12] fix bug --- .../src/main/java/org/apache/tajo/catalog/Schema.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/Schema.java b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/Schema.java index b9c212c98e..9574f12440 100644 --- a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/Schema.java +++ b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/Schema.java @@ -422,7 +422,9 @@ public synchronized Schema addColumn(String name, TypeDesc typeDesc) { Column newCol = new Column(normalized, typeDesc); fields.add(newCol); fieldsByQualifiedName.put(newCol.getQualifiedName(), fields.size() - 1); - fieldsByName.put(newCol.getSimpleName(), new ArrayList(fields.size() - 1)); + List inputList = new ArrayList<>(); + inputList.add(fields.size() - 1); + fieldsByName.put(newCol.getSimpleName(), inputList); return this; } From 6c7ce5c871e4e88629304f57f3adba759a29af6a Mon Sep 17 00:00:00 2001 From: Dongkyu Hwangbo Date: Mon, 14 Dec 2015 17:10:28 +0900 Subject: [PATCH 09/12] modify --- .../tajo/function/FunctionSignature.java | 2 +- .../tajo/service/BaseServiceTracker.java | 2 +- .../tajo/engine/query/TestGroupByQuery.java | 2 +- .../tajo/engine/query/TestHBaseTable.java | 2 +- .../engine/query/TestSelectNestedRecord.java | 18 +++++++++--------- .../engine/planner/PhysicalPlannerImpl.java | 2 +- .../org/apache/tajo/ha/HdfsServiceTracker.java | 2 +- .../apache/tajo/querymaster/Repartitioner.java | 12 ++++++------ .../org/apache/tajo/plan/ExprAnnotator.java | 7 +++++-- .../rewrite/rules/ProjectionPushDownRule.java | 6 +++--- .../tajo/storage/fragment/FileFragment.java | 2 +- .../apache/tajo/storage/TestMergeScanner.java | 2 +- .../apache/tajo/storage/jdbc/JdbcFragment.java | 2 +- 13 files changed, 32 insertions(+), 29 deletions(-) diff --git a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java index e87ad3e56d..c08638111b 100644 --- a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java +++ b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java @@ -112,7 +112,7 @@ public FunctionSignatureProto getProto() { FunctionSignatureProto.Builder builder = FunctionSignatureProto.newBuilder(); builder.setType(functionType); builder.setName(name); - builder.addAllParameterTypes(new ArrayList<>(Arrays.asList(paramTypes))); + builder.addAllParameterTypes(Arrays.asList(paramTypes)); builder.setReturnType(returnType); return builder.build(); } diff --git a/tajo-common/src/main/java/org/apache/tajo/service/BaseServiceTracker.java b/tajo-common/src/main/java/org/apache/tajo/service/BaseServiceTracker.java index 9c17e315f1..43f8c32c98 100644 --- a/tajo-common/src/main/java/org/apache/tajo/service/BaseServiceTracker.java +++ b/tajo-common/src/main/java/org/apache/tajo/service/BaseServiceTracker.java @@ -44,7 +44,7 @@ public BaseServiceTracker(TajoConf conf) { tajoMasterInfo.setCatalogAddress(conf.getSocketAddrVar(TajoConf.ConfVars.CATALOG_ADDRESS)); tajoMasterInfo.setWebServerAddress(conf.getSocketAddrVar(TajoConf.ConfVars.TAJO_MASTER_INFO_ADDRESS)); - tajoMasterInfos = new ArrayList<>(Arrays.asList(tajoMasterInfo)); + tajoMasterInfos = Arrays.asList(tajoMasterInfo); } @Override diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestGroupByQuery.java b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestGroupByQuery.java index 36b40003b6..ea4a7c8f15 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestGroupByQuery.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestGroupByQuery.java @@ -57,7 +57,7 @@ public TestGroupByQuery(String groupByOption) throws Exception { @AfterClass public static void tearDown() throws Exception { - client.unsetSessionVariables(new ArrayList<>(Arrays.asList(SessionVars.GROUPBY_MULTI_LEVEL_ENABLED.keyname()))); + client.unsetSessionVariables(Arrays.asList(SessionVars.GROUPBY_MULTI_LEVEL_ENABLED.keyname())); } @Parameters diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestHBaseTable.java b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestHBaseTable.java index e27d057d5d..13b7711bb0 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestHBaseTable.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestHBaseTable.java @@ -1311,7 +1311,7 @@ public void testInsertIntoUsingPut() throws Exception { } finally { executeString("DROP TABLE hbase_mapped_table PURGE").close(); - client.unsetSessionVariables(new ArrayList<>(Arrays.asList(HBaseStorageConstants.INSERT_PUT_MODE))); + client.unsetSessionVariables(Arrays.asList(HBaseStorageConstants.INSERT_PUT_MODE)); if (scanner != null) { scanner.close(); diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java index e8fcc52c06..1e90a324ae 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java @@ -33,7 +33,7 @@ public class TestSelectNestedRecord extends QueryTestCaseBase { @Test public final void testSelect0() throws Exception { List tables = executeDDL("sample1_ddl.sql", "sample1", "sample1"); - assertEquals(new ArrayList<>(Arrays.asList("sample1")), tables); + assertEquals(Arrays.asList("sample1"), tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -43,7 +43,7 @@ public final void testSelect0() throws Exception { @Test public final void testSelect1() throws Exception { List tables = executeDDL("sample1_ddl.sql", "sample1", "sample2"); - assertEquals(new ArrayList<>(Arrays.asList("sample2")), tables); + assertEquals(Arrays.asList("sample2"), tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -53,7 +53,7 @@ public final void testSelect1() throws Exception { @Test public final void testSelect2() throws Exception { List tables = executeDDL("tweets_ddl.sql", "tweets", "tweets"); - assertEquals(new ArrayList<>(Arrays.asList("tweets")), tables); + assertEquals(Arrays.asList("tweets"), tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -63,7 +63,7 @@ public final void testSelect2() throws Exception { @Test public final void testSelect3() throws Exception { List tables = executeDDL("sample2_ddl.sql", "sample2", "sample5"); - assertEquals(new ArrayList<>(Arrays.asList("sample5")), tables); + assertEquals(Arrays.asList("sample5"), tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -74,7 +74,7 @@ public final void testSelect3() throws Exception { public final void testTAJO_1610() throws Exception { executeString("CREATE DATABASE tweets").close(); List tables = executeDDL("tweets_ddl.sql", "tweets", "tweets.tweets"); - assertEquals(new ArrayList<>(Arrays.asList("tweets.tweets")), tables); + assertEquals(Arrays.asList("tweets.tweets"), tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -84,7 +84,7 @@ public final void testTAJO_1610() throws Exception { @Test public final void testNestedFieldAsGroupbyKey1() throws Exception { List tables = executeDDL("tweets_ddl.sql", "tweets", "tweets"); - assertEquals(new ArrayList<>(Arrays.asList("tweets")), tables); + assertEquals(Arrays.asList("tweets"), tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -94,7 +94,7 @@ public final void testNestedFieldAsGroupbyKey1() throws Exception { @Test public final void testNestedFieldAsJoinKey1() throws Exception { List tables = executeDDL("tweets_ddl.sql", "tweets", "tweets"); - assertEquals(new ArrayList<>(Arrays.asList("tweets")), tables); + assertEquals(Arrays.asList("tweets"), tables); ResultSet res = executeQuery(); assertResultSet(res); @@ -105,7 +105,7 @@ public final void testNestedFieldAsJoinKey1() throws Exception { public final void testInsertType1() throws Exception { // all columns List tables = executeDDL("sample1_ddl.sql", "sample1", "sample3"); - assertEquals(new ArrayList<>(Arrays.asList("sample3")), tables); + assertEquals(Arrays.asList("sample3"), tables); executeString("CREATE TABLE clone (title TEXT, name RECORD (first_name TEXT, last_name TEXT)) USING JSON;").close(); @@ -119,7 +119,7 @@ public final void testInsertType1() throws Exception { public final void testInsertType2() throws Exception { // some columns List tables = executeDDL("sample1_ddl.sql", "sample1", "sample4"); - assertEquals(new ArrayList<>(Arrays.asList("sample4")), tables); + assertEquals(Arrays.asList("sample4"), tables); executeString("CREATE TABLE clone2 (title TEXT, name RECORD (first_name TEXT, last_name TEXT)) USING JSON;").close(); diff --git a/tajo-core/src/main/java/org/apache/tajo/engine/planner/PhysicalPlannerImpl.java b/tajo-core/src/main/java/org/apache/tajo/engine/planner/PhysicalPlannerImpl.java index 739147efb1..8bc935ba55 100644 --- a/tajo-core/src/main/java/org/apache/tajo/engine/planner/PhysicalPlannerImpl.java +++ b/tajo-core/src/main/java/org/apache/tajo/engine/planner/PhysicalPlannerImpl.java @@ -933,7 +933,7 @@ public PhysicalExec createScanPlan(TaskAttemptContext ctx, ScanNode scanNode, St FileTablespace space = (FileTablespace) TablespaceManager.get(scanNode.getTableDesc().getUri()); for (Path path : partitionedTableScanNode.getInputPaths()) { - fileFragments.addAll(new ArrayList<>(Arrays.asList(space.split(scanNode.getCanonicalName(), path)))); + fileFragments.addAll(Arrays.asList(space.split(scanNode.getCanonicalName(), path))); } FragmentProto[] fragments = diff --git a/tajo-core/src/main/java/org/apache/tajo/ha/HdfsServiceTracker.java b/tajo-core/src/main/java/org/apache/tajo/ha/HdfsServiceTracker.java index 4a9fa12562..120d61cd58 100644 --- a/tajo-core/src/main/java/org/apache/tajo/ha/HdfsServiceTracker.java +++ b/tajo-core/src/main/java/org/apache/tajo/ha/HdfsServiceTracker.java @@ -501,7 +501,7 @@ private synchronized List getAddressElements() throws ServiceTrackerExce FSDataInputStream stream = fs.open(activeMasterEntry); String data = stream.readUTF(); stream.close(); - addressElements.addAll(new ArrayList<>(Arrays.asList(data.split("_")))); // Add remains entries to elements + addressElements.addAll(Arrays.asList(data.split("_"))); // Add remains entries to elements // ensure the number of entries Preconditions.checkState(addressElements.size() == 5, "Fewer service addresses than necessary."); diff --git a/tajo-core/src/main/java/org/apache/tajo/querymaster/Repartitioner.java b/tajo-core/src/main/java/org/apache/tajo/querymaster/Repartitioner.java index ac115728fc..f737608b41 100644 --- a/tajo-core/src/main/java/org/apache/tajo/querymaster/Repartitioner.java +++ b/tajo-core/src/main/java/org/apache/tajo/querymaster/Repartitioner.java @@ -321,12 +321,12 @@ private static void scheduleSymmetricRepartitionJoin(QueryMasterTask.QueryMaster if (tbNameToInterm.containsKey(scanEbId)) { tbNameToInterm.get(scanEbId).add(intermediateEntry); } else { - tbNameToInterm.put(scanEbId, new ArrayList<>(Arrays.asList(intermediateEntry))); + tbNameToInterm.put(scanEbId, Arrays.asList(intermediateEntry)); } } else { Map> tbNameToInterm = new HashMap<>(); - tbNameToInterm.put(scanEbId, new ArrayList<>(Arrays.asList(intermediateEntry))); + tbNameToInterm.put(scanEbId, Arrays.asList(intermediateEntry)); hashEntries.put(intermediateEntry.getPartId(), tbNameToInterm); } } @@ -999,7 +999,7 @@ public static void scheduleScatteredHashShuffleFetches(TaskSchedulerContext sche int partId = eachInterm.getPartId(); List partitionInterms = partitionIntermMap.get(partId); if (partitionInterms == null) { - partitionInterms = new ArrayList<>(Arrays.asList(eachInterm)); + partitionInterms = Arrays.asList(eachInterm); partitionIntermMap.put(partId, partitionInterms); } else { partitionInterms.add(eachInterm); @@ -1078,7 +1078,7 @@ public static List> splitOrMergeIntermediates(@NotNull String fetchListVolume = 0; } FetchImpl fetch = new FetchImpl(fetchName, currentInterm.getPullHost(), SCATTERED_HASH_SHUFFLE, - ebId, currentInterm.getPartId(), new ArrayList<>(Arrays.asList(currentInterm))); + ebId, currentInterm.getPartId(), Arrays.asList(currentInterm)); fetch.setOffset(eachSplit.getFirst()); fetch.setLength(eachSplit.getSecond()); fetchListForSingleTask.add(fetch.getProto()); @@ -1219,7 +1219,7 @@ public static Map> hashByKey(List(Arrays.asList(entry))); + hashed.put(entry.getPartId(), Arrays.asList(entry)); } } @@ -1235,7 +1235,7 @@ public static Map> hashByHost(List(Arrays.asList(entry))); + hashed.put(host, Arrays.asList(entry)); } } diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/ExprAnnotator.java b/tajo-plan/src/main/java/org/apache/tajo/plan/ExprAnnotator.java index 47aef47eab..8107c720ed 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/ExprAnnotator.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/ExprAnnotator.java @@ -45,7 +45,10 @@ import org.apache.tajo.util.datetime.DateTimeUtil; import org.apache.tajo.util.datetime.TimeMeta; -import java.util.*; +import java.util.Arrays; +import java.util.Set; +import java.util.Stack; +import java.util.TimeZone; import static org.apache.tajo.algebra.WindowSpec.WindowFrameEndBoundType; import static org.apache.tajo.algebra.WindowSpec.WindowFrameStartBoundType; @@ -594,7 +597,7 @@ public EvalNode visitFunction(Context ctx, Stack stack, FunctionExpr expr) FunctionDesc funcDesc = catalog.getFunction(expr.getSignature(), paramTypes); // trying the implicit type conversion between actual parameter types and the definition types. - if (CatalogUtil.checkIfVariableLengthParamDefinition(new ArrayList<>(Arrays.asList(funcDesc.getParamTypes())))) { + if (CatalogUtil.checkIfVariableLengthParamDefinition(Arrays.asList(funcDesc.getParamTypes()))) { DataType lastDataType = funcDesc.getParamTypes()[0]; for (int i = 0; i < givenArgs.length; i++) { if (i < (funcDesc.getParamTypes().length - 1)) { // variable length diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/ProjectionPushDownRule.java b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/ProjectionPushDownRule.java index 47476e112f..ce083f1c98 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/ProjectionPushDownRule.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/ProjectionPushDownRule.java @@ -689,7 +689,7 @@ public LogicalNode visitWindowAgg(Context context, LogicalPlan plan, LogicalPlan if (node.hasAggFunctions() && aggEvalNames != null) { WindowFunctionEval [] aggEvals = new WindowFunctionEval[aggEvalNames.length]; int i = 0; - for (Iterator it = getFilteredReferences(aggEvalNames, new ArrayList<>(Arrays.asList(aggEvalNames))); it.hasNext();) { + for (Iterator it = getFilteredReferences(aggEvalNames, Arrays.asList(aggEvalNames)); it.hasNext();) { String referenceName = it.next(); Target target = context.targetListMgr.getTarget(referenceName); @@ -795,7 +795,7 @@ public LogicalNode visitGroupBy(Context context, LogicalPlan plan, LogicalPlan.Q // Getting projected targets if (node.hasAggFunctions() && aggEvalNames != null) { List aggEvals = new ArrayList<>(); - for (Iterator it = getFilteredReferences(aggEvalNames, new ArrayList<>(Arrays.asList(aggEvalNames))); it.hasNext();) { + for (Iterator it = getFilteredReferences(aggEvalNames, Arrays.asList(aggEvalNames)); it.hasNext();) { String referenceName = it.next(); Target target = context.targetListMgr.getTarget(referenceName); @@ -962,7 +962,7 @@ static Iterator getFilteredReferences(Collection targetNames, Se } static Iterator getFilteredReferences(String [] targetNames, Collection required) { - return new FilteredStringsIterator(new ArrayList<>(Arrays.asList(targetNames)), required); + return new FilteredStringsIterator(Arrays.asList(targetNames), required); } static class FilteredStringsIterator implements Iterator { diff --git a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/fragment/FileFragment.java b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/fragment/FileFragment.java index 9ba83ec376..8f18c7a0f0 100644 --- a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/fragment/FileFragment.java +++ b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/fragment/FileFragment.java @@ -226,7 +226,7 @@ public FragmentProto getProto() { } if(hosts != null) { - builder.addAllHosts(new ArrayList<>(Arrays.asList(hosts))); + builder.addAllHosts(Arrays.asList(hosts)); } FragmentProto.Builder fragmentBuilder = FragmentProto.newBuilder(); diff --git a/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestMergeScanner.java b/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestMergeScanner.java index 881f80dc2c..4090880503 100644 --- a/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestMergeScanner.java +++ b/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestMergeScanner.java @@ -165,7 +165,7 @@ public void testMultipleFiles() throws IOException { targetSchema.addColumn(schema.getColumn(0)); targetSchema.addColumn(schema.getColumn(2)); - Scanner scanner = new MergeScanner(conf, schema, meta, new ArrayList<>(Arrays.asList(fragment)), targetSchema); + Scanner scanner = new MergeScanner(conf, schema, meta, Arrays.asList(fragment), targetSchema); assertEquals(isProjectableStorage(meta.getDataFormat()), scanner.isProjectable()); scanner.init(); diff --git a/tajo-storage/tajo-storage-jdbc/src/main/java/org/apache/tajo/storage/jdbc/JdbcFragment.java b/tajo-storage/tajo-storage-jdbc/src/main/java/org/apache/tajo/storage/jdbc/JdbcFragment.java index c3906684c1..7d0d81035d 100644 --- a/tajo-storage/tajo-storage-jdbc/src/main/java/org/apache/tajo/storage/jdbc/JdbcFragment.java +++ b/tajo-storage/tajo-storage-jdbc/src/main/java/org/apache/tajo/storage/jdbc/JdbcFragment.java @@ -91,7 +91,7 @@ public CatalogProtos.FragmentProto getProto() { builder.setInputSourceId(this.inputSourceId); builder.setUri(this.uri); if(hostNames != null) { - builder.addAllHosts(new ArrayList<>(Arrays.asList(hostNames))); + builder.addAllHosts(Arrays.asList(hostNames)); } CatalogProtos.FragmentProto.Builder fragmentBuilder = CatalogProtos.FragmentProto.newBuilder(); From 0b0e227aefcab39c5e73692718df5efe8925874d Mon Sep 17 00:00:00 2001 From: Dongkyu Hwangbo Date: Mon, 14 Dec 2015 21:23:36 +0900 Subject: [PATCH 10/12] fix bugs --- .../main/java/org/apache/tajo/querymaster/Repartitioner.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tajo-core/src/main/java/org/apache/tajo/querymaster/Repartitioner.java b/tajo-core/src/main/java/org/apache/tajo/querymaster/Repartitioner.java index f737608b41..acf6c162e7 100644 --- a/tajo-core/src/main/java/org/apache/tajo/querymaster/Repartitioner.java +++ b/tajo-core/src/main/java/org/apache/tajo/querymaster/Repartitioner.java @@ -321,12 +321,12 @@ private static void scheduleSymmetricRepartitionJoin(QueryMasterTask.QueryMaster if (tbNameToInterm.containsKey(scanEbId)) { tbNameToInterm.get(scanEbId).add(intermediateEntry); } else { - tbNameToInterm.put(scanEbId, Arrays.asList(intermediateEntry)); + tbNameToInterm.put(scanEbId, new ArrayList<>(Arrays.asList(intermediateEntry))); } } else { Map> tbNameToInterm = new HashMap<>(); - tbNameToInterm.put(scanEbId, Arrays.asList(intermediateEntry)); + tbNameToInterm.put(scanEbId, new ArrayList<>(Arrays.asList(intermediateEntry))); hashEntries.put(intermediateEntry.getPartId(), tbNameToInterm); } } From 016f844ea39e6a0682e1baf87c621d7f7f91e8fd Mon Sep 17 00:00:00 2001 From: Dongkyu Hwangbo Date: Mon, 14 Dec 2015 23:31:52 +0900 Subject: [PATCH 11/12] remove unused import --- .../main/java/org/apache/tajo/function/FunctionSignature.java | 1 - .../org/apache/tajo/engine/query/TestSelectNestedRecord.java | 1 - .../src/test/java/org/apache/tajo/storage/TestMergeScanner.java | 1 - .../src/main/java/org/apache/tajo/storage/jdbc/JdbcFragment.java | 1 - 4 files changed, 4 deletions(-) diff --git a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java index c08638111b..bf37647894 100644 --- a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java +++ b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/function/FunctionSignature.java @@ -24,7 +24,6 @@ import org.apache.tajo.common.ProtoObject; import org.apache.tajo.util.TUtil; -import java.util.ArrayList; import java.util.Arrays; import static org.apache.tajo.catalog.proto.CatalogProtos.FunctionSignatureProto; diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java index 1e90a324ae..b51c7ee7a8 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestSelectNestedRecord.java @@ -22,7 +22,6 @@ import org.junit.Test; import java.sql.ResultSet; -import java.util.ArrayList; import java.util.Arrays; import java.util.List; diff --git a/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestMergeScanner.java b/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestMergeScanner.java index 4090880503..d8d335989a 100644 --- a/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestMergeScanner.java +++ b/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestMergeScanner.java @@ -40,7 +40,6 @@ import org.junit.runners.Parameterized.Parameters; import java.io.IOException; -import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; diff --git a/tajo-storage/tajo-storage-jdbc/src/main/java/org/apache/tajo/storage/jdbc/JdbcFragment.java b/tajo-storage/tajo-storage-jdbc/src/main/java/org/apache/tajo/storage/jdbc/JdbcFragment.java index 7d0d81035d..0088504c5a 100644 --- a/tajo-storage/tajo-storage-jdbc/src/main/java/org/apache/tajo/storage/jdbc/JdbcFragment.java +++ b/tajo-storage/tajo-storage-jdbc/src/main/java/org/apache/tajo/storage/jdbc/JdbcFragment.java @@ -24,7 +24,6 @@ import org.apache.tajo.storage.fragment.Fragment; import org.apache.tajo.storage.jdbc.JdbcFragmentProtos.JdbcFragmentProto; -import java.util.ArrayList; import java.util.Arrays; public class JdbcFragment implements Fragment, Comparable, Cloneable { From 795c10050fc8f32b6b9dad791cff900eef3cd843 Mon Sep 17 00:00:00 2001 From: Dongkyu Hwangbo Date: Tue, 5 Jan 2016 20:40:18 +0900 Subject: [PATCH 12/12] travis trigger