Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/tajo into TAJO-1730
Project: http://git-wip-us.apache.org/repos/asf/tajo/repo Commit: http://git-wip-us.apache.org/repos/asf/tajo/commit/fe0b8a76 Tree: http://git-wip-us.apache.org/repos/asf/tajo/tree/fe0b8a76 Diff: http://git-wip-us.apache.org/repos/asf/tajo/diff/fe0b8a76 Branch: refs/heads/TAJO-1730 Commit: fe0b8a769a80322538517c3a5385d1bca042bd60 Parents: 39e7bd8 f0ab0ca Author: Hyunsik Choi <[email protected]> Authored: Thu Aug 13 23:16:42 2015 +0900 Committer: Hyunsik Choi <[email protected]> Committed: Thu Aug 13 23:16:42 2015 +0900 ---------------------------------------------------------------------- BUILDING | 2 +- CHANGES | 24 +- README | 2 +- pom.xml | 10 +- tajo-algebra/pom.xml | 5 - tajo-catalog/tajo-catalog-client/pom.xml | 5 - .../tajo/catalog/AbstractCatalogClient.java | 290 ++++++---- .../src/main/proto/CatalogProtocol.proto | 1 - tajo-catalog/tajo-catalog-common/pom.xml | 5 - .../org/apache/tajo/catalog/CatalogService.java | 103 ++-- .../org/apache/tajo/catalog/CatalogUtil.java | 14 +- .../org/apache/tajo/catalog/FunctionDesc.java | 12 +- .../apache/tajo/catalog/MetadataProvider.java | 2 +- .../org/apache/tajo/catalog/NestedPathUtil.java | 2 +- .../java/org/apache/tajo/catalog/Schema.java | 2 +- .../exception/AmbiguousFunctionException.java | 36 -- ...biguousPartitionDirectoryExistException.java | 30 - .../exception/AmbiguousTableException.java | 33 -- .../catalog/exception/CatalogException.java | 35 -- .../catalog/exception/CatalogExceptionUtil.java | 45 -- .../exception/DuplicateColumnException.java | 34 -- .../exception/DuplicateDatabaseException.java | 34 -- .../exception/DuplicateFunctionException.java | 32 -- .../exception/DuplicateIndexException.java | 34 -- .../exception/DuplicatePartitionException.java | 35 -- .../exception/DuplicateTableException.java | 35 -- .../exception/DuplicateTablespaceException.java | 28 - .../InsufficientPrivilegeException.java | 29 - .../catalog/exception/InvalidNameException.java | 29 - .../exception/MetadataConnectionException.java | 32 -- .../exception/UndefinedColumnException.java | 35 -- .../exception/UndefinedDatabaseException.java | 35 -- .../exception/UndefinedFunctionException.java | 46 -- .../exception/UndefinedIndexException.java | 33 -- .../exception/UndefinedPartitionException.java | 35 -- .../UndefinedPartitionKeyException.java | 30 - .../UndefinedPartitionMethodException.java | 30 - .../exception/UndefinedTableException.java | 40 -- .../exception/UndefinedTablespaceException.java | 34 -- .../src/main/proto/CatalogProtos.proto | 3 +- .../apache/tajo/catalog/TestFunctionDesc.java | 8 +- .../org/apache/tajo/catalog/TestSchema.java | 1 - .../tajo-catalog-drivers/tajo-hive/pom.xml | 5 - .../tajo/catalog/store/HiveCatalogStore.java | 124 ++--- .../tajo/catalog/store/HiveCatalogUtil.java | 11 +- tajo-catalog/tajo-catalog-server/pom.xml | 5 - .../org/apache/tajo/catalog/CatalogServer.java | 336 ++---------- .../tajo/catalog/LinkedMetadataManager.java | 6 +- .../InfoSchemaMetadataDictionary.java | 2 +- .../tajo/catalog/store/AbstractDBStore.java | 543 ++++++++++--------- .../apache/tajo/catalog/store/CatalogStore.java | 160 +++--- .../apache/tajo/catalog/store/DerbyStore.java | 13 +- .../apache/tajo/catalog/store/MariaDBStore.java | 6 +- .../org/apache/tajo/catalog/store/MemStore.java | 127 +++-- .../apache/tajo/catalog/store/MySQLStore.java | 6 +- .../apache/tajo/catalog/store/OracleStore.java | 11 +- .../tajo/catalog/store/PostgreSQLStore.java | 10 +- .../catalog/store/XMLCatalogSchemaManager.java | 59 +- .../org/apache/tajo/catalog/TestCatalog.java | 89 +-- .../tajo/catalog/TestLinkedMetadataManager.java | 23 +- tajo-cli/pom.xml | 5 - .../java/org/apache/tajo/cli/tsql/TajoCli.java | 81 ++- .../tsql/commands/ConnectDatabaseCommand.java | 40 +- .../cli/tsql/commands/DescTableCommand.java | 3 +- .../cli/tsql/commands/TajoShellCommand.java | 7 +- tajo-client/pom.xml | 5 - .../apache/tajo/client/CatalogAdminClient.java | 49 +- .../tajo/client/CatalogAdminClientImpl.java | 103 ++-- .../apache/tajo/client/ClientExceptionUtil.java | 106 ---- .../org/apache/tajo/client/QueryClient.java | 35 +- .../org/apache/tajo/client/QueryClientImpl.java | 88 +-- .../apache/tajo/client/SessionConnection.java | 33 +- .../org/apache/tajo/client/TajoClientImpl.java | 68 +-- .../org/apache/tajo/client/TajoClientUtil.java | 3 +- .../apache/tajo/client/v2/ClientDelegate.java | 5 +- .../tajo/client/v2/LegacyClientDelegate.java | 80 ++- .../org/apache/tajo/client/v2/TajoClient.java | 5 +- .../ClientUnableToConnectException.java | 2 +- .../org/apache/tajo/jdbc/WaitingResultSet.java | 4 + .../org/apache/tajo/storage/RowStoreUtil.java | 9 +- tajo-common/pom.xml | 5 - .../exception/AmbiguousFunctionException.java | 33 ++ ...biguousPartitionDirectoryExistException.java | 35 ++ .../tajo/exception/AmbiguousTableException.java | 33 ++ .../CatalogUpgradeRequiredException.java | 33 ++ .../exception/DataTypeMismatchException.java | 34 ++ .../tajo/exception/DefaultTajoException.java | 34 ++ .../exception/DuplicateColumnException.java | 34 ++ .../exception/DuplicateDatabaseException.java | 33 ++ .../exception/DuplicateFunctionException.java | 34 ++ .../tajo/exception/DuplicateIndexException.java | 34 ++ .../exception/DuplicatePartitionException.java | 35 ++ .../tajo/exception/DuplicateTableException.java | 35 ++ .../exception/DuplicateTablespaceException.java | 34 ++ .../apache/tajo/exception/ErrorMessages.java | 25 +- .../apache/tajo/exception/ExceptionUtil.java | 133 ++++- .../InsufficientPrivilegeException.java | 33 ++ .../tajo/exception/InternalException.java | 43 -- .../exception/InvalidDataTypeException.java | 7 +- .../tajo/exception/InvalidNameException.java | 34 ++ .../exception/InvalidOperationException.java | 3 - .../InvalidTablePropertyException.java | 33 ++ .../LMDNoMatchedDatatypeException.java | 34 ++ .../exception/MetadataConnectionException.java | 31 ++ .../MissingTablePropertyException.java | 33 ++ .../tajo/exception/NotImplementedException.java | 39 ++ .../tajo/exception/QueryFailedException.java | 34 ++ .../tajo/exception/QueryKilledException.java | 34 ++ .../tajo/exception/QueryNotFoundException.java | 33 ++ .../apache/tajo/exception/ReturnStateUtil.java | 26 +- .../apache/tajo/exception/SQLExceptionUtil.java | 2 - .../apache/tajo/exception/SQLSyntaxError.java | 35 ++ .../org/apache/tajo/exception/TajoError.java | 3 +- .../apache/tajo/exception/TajoException.java | 4 +- .../tajo/exception/TajoExceptionInterface.java | 33 -- .../tajo/exception/TajoInternalError.java | 1 - .../tajo/exception/TajoRuntimeException.java | 2 +- .../UnavailableTableLocationException.java | 33 ++ .../exception/UndefinedColumnException.java | 36 ++ .../exception/UndefinedDatabaseException.java | 36 ++ .../exception/UndefinedFunctionException.java | 35 ++ .../tajo/exception/UndefinedIndexException.java | 38 ++ .../exception/UndefinedPartitionException.java | 35 ++ .../UndefinedPartitionKeyException.java | 34 ++ .../UndefinedPartitionMethodException.java | 35 ++ .../tajo/exception/UndefinedTableException.java | 39 ++ .../exception/UndefinedTablespaceException.java | 34 ++ .../tajo/exception/UnimplementedException.java | 34 -- .../exception/UnknownDataFormatException.java | 36 ++ .../exception/UnknownDataTypeException.java | 32 -- .../exception/UnsupportedDataTypeException.java | 35 ++ .../apache/tajo/storage/StorageConstants.java | 3 + .../java/org/apache/tajo/storage/VTuple.java | 6 +- .../java/org/apache/tajo/util/StringUtils.java | 25 +- tajo-common/src/main/proto/errors.proto | 19 +- tajo-core/pom.xml | 5 - .../tajo/engine/function/FailFunction.java | 70 +++ .../engine/function/json/JsonArrayContains.java | 103 ++++ .../tajo/engine/function/json/JsonArrayGet.java | 82 +++ .../engine/function/json/JsonArrayLength.java | 67 +++ .../function/json/JsonExtractPathText.java | 12 +- .../function/json/ScalarJsonFunction.java | 38 ++ .../apache/tajo/engine/parser/SQLAnalyzer.java | 3 +- .../tajo/engine/parser/SQLSyntaxError.java | 51 -- .../tajo/engine/planner/PhysicalPlanner.java | 9 +- .../engine/planner/PhysicalPlannerImpl.java | 15 +- .../engine/planner/global/GlobalPlanner.java | 21 +- .../physical/RangeShuffleFileWriteExec.java | 19 +- .../org/apache/tajo/master/GlobalEngine.java | 8 +- .../java/org/apache/tajo/master/TajoMaster.java | 7 +- .../tajo/master/TajoMasterClientService.java | 43 +- .../tajo/master/exec/CreateTableExecutor.java | 19 +- .../apache/tajo/master/exec/DDLExecutor.java | 72 ++- .../apache/tajo/master/exec/QueryExecutor.java | 4 +- .../tajo/querymaster/DefaultTaskScheduler.java | 115 ++-- .../java/org/apache/tajo/querymaster/Query.java | 11 +- .../tajo/querymaster/QueryMasterTask.java | 3 +- .../apache/tajo/querymaster/Repartitioner.java | 26 +- .../java/org/apache/tajo/querymaster/Stage.java | 5 +- .../tajo/webapp/QueryExecutorServlet.java | 9 +- .../org/apache/tajo/worker/TajoQueryEngine.java | 6 +- .../tajo/ws/rs/resources/DatabasesResource.java | 60 +- .../tajo/ws/rs/resources/TablesResource.java | 24 +- .../java/org/apache/tajo/QueryTestCaseBase.java | 19 +- .../org/apache/tajo/benchmark/TestTPCH.java | 7 + .../tajo/cli/tsql/TestTajoCliNegatives.java | 146 +++++ .../TestCatalogAdminClientExceptions.java | 103 ++++ .../tajo/client/TestQueryClientExceptions.java | 126 +++++ .../org/apache/tajo/client/TestTajoClient.java | 22 +- .../tajo/client/TestTajoClientFailures.java | 79 --- .../apache/tajo/client/v2/TestTajoClientV2.java | 50 +- .../tajo/engine/eval/TestEvalTreeUtil.java | 3 +- .../tajo/engine/eval/TestSQLExpression.java | 2 +- .../function/TestConditionalExpressions.java | 2 +- .../tajo/engine/function/TestJsonFunctions.java | 31 ++ .../planner/physical/TestPhysicalPlanner.java | 5 +- .../tajo/engine/query/TestAlterTablespace.java | 4 +- .../tajo/engine/query/TestCreateTable.java | 2 +- .../tajo/engine/query/TestHBaseTable.java | 18 +- .../apache/tajo/engine/query/TestJoinQuery.java | 2 - .../engine/query/TestSelectNestedRecord.java | 10 + .../tajo/engine/query/TestSelectQuery.java | 27 + .../tajo/engine/query/TestTruncateTable.java | 14 +- .../TestSelectNestedRecord/sample2/sample2.json | 1 + .../TestSelectNestedRecord/sample2_ddl.sql | 10 +- .../TestSelectNestedRecord/testSelect3.sql | 1 + .../queries/TestTPCH/testFirstJoinInQ7.sql | 13 + .../queries/TestTruncateTable/table1_ddl.sql | 2 +- .../TestSelectNestedRecord/testSelect3.result | 3 + .../testSelectWithCommonQuals1.1.plan | 7 + .../testSelectWithCommonQuals1.1.result | 27 + .../testSelectWithCommonQuals2.1.plan | 7 + .../testSelectWithCommonQuals2.1.result | 27 + .../testSelectWithCommonQuals3.1.plan | 7 + .../testSelectWithCommonQuals3.1.result | 7 + .../results/TestTPCH/testFirstJoinInQ7.plan | 156 ++++++ .../results/TestTPCH/testFirstJoinInQ7.result | 4 + .../testAlterTableAddDropPartition.result | 2 +- .../testQueryFailure.result | 0 .../TestTajoCliNegatives/testQuerySyntax.result | 3 + .../src/main/sphinx/functions/json_func.rst | 55 +- tajo-docs/src/main/sphinx/getting_started.rst | 2 +- tajo-jdbc/pom.xml | 5 - tajo-metrics/pom.xml | 5 - tajo-plan/pom.xml | 5 - .../org/apache/tajo/plan/ExprAnnotator.java | 15 +- .../org/apache/tajo/plan/ExprNormalizer.java | 2 +- .../tajo/plan/LogicalPlanPreprocessor.java | 2 +- .../org/apache/tajo/plan/LogicalPlanner.java | 10 +- .../org/apache/tajo/plan/TypeDeterminant.java | 10 +- .../plan/expr/AggregationFunctionCallEval.java | 7 +- .../tajo/plan/expr/BasicEvalNodeVisitor.java | 23 +- .../apache/tajo/plan/expr/EvalNodeVisitor2.java | 2 +- .../org/apache/tajo/plan/expr/EvalTreeUtil.java | 31 +- .../tajo/plan/function/AggFunctionInvoke.java | 3 +- .../function/ClassBasedAggFunctionInvoke.java | 3 +- .../ClassBasedScalarFunctionInvoke.java | 5 +- .../tajo/plan/function/FunctionInvoke.java | 5 +- .../org/apache/tajo/plan/logical/JoinNode.java | 4 + .../tajo/plan/nameresolver/NameResolver.java | 19 +- .../plan/nameresolver/ResolverByLegacy.java | 3 +- .../tajo/plan/nameresolver/ResolverByRels.java | 7 +- .../nameresolver/ResolverByRelsAndSubExprs.java | 7 +- .../nameresolver/ResolverBySubExprsAndRels.java | 7 +- .../BaseLogicalPlanRewriteRuleProvider.java | 7 +- .../rules/CommonConditionReduceRule.java | 221 ++++++++ .../plan/rewrite/rules/FilterPushDownRule.java | 18 +- .../rewrite/rules/ProjectionPushDownRule.java | 2 +- .../tajo/plan/serder/EvalNodeDeserializer.java | 10 +- .../plan/serder/LogicalNodeDeserializer.java | 6 +- .../tajo/plan/serder/LogicalNodeSerializer.java | 7 +- .../org/apache/tajo/plan/util/IndexUtil.java | 2 +- .../org/apache/tajo/plan/util/PlannerUtil.java | 16 +- .../tajo/plan/verifier/ExprsVerifier.java | 5 +- .../plan/verifier/PreLogicalPlanVerifier.java | 14 +- .../tajo/plan/verifier/VerificationState.java | 1 - tajo-project/pom.xml | 17 +- tajo-rpc/tajo-rpc-common/pom.xml | 5 - .../java/org/apache/tajo/rpc/RpcConstants.java | 2 +- tajo-rpc/tajo-rpc-protobuf/pom.xml | 5 - .../java/org/apache/tajo/rpc/TestAsyncRpc.java | 4 +- .../org/apache/tajo/rpc/TestBlockingRpc.java | 4 +- tajo-rpc/tajo-ws-rs/pom.xml | 5 - tajo-storage/tajo-storage-common/pom.xml | 5 - .../apache/tajo/storage/AbstractScanner.java | 20 +- .../org/apache/tajo/storage/RowStoreUtil.java | 8 +- .../org/apache/tajo/storage/Tablespace.java | 14 +- tajo-storage/tajo-storage-hbase/pom.xml | 5 - .../storage/hbase/AbstractHBaseAppender.java | 10 +- .../tajo/storage/hbase/ColumnMapping.java | 37 +- .../HBaseBinarySerializerDeserializer.java | 2 +- .../apache/tajo/storage/hbase/HBaseScanner.java | 8 +- .../tajo/storage/hbase/HBaseTablespace.java | 79 +-- .../hbase/HBaseTextSerializerDeserializer.java | 2 +- .../storage/hbase/SortedInsertRewriter.java | 6 +- tajo-storage/tajo-storage-hdfs/pom.xml | 13 +- .../org/apache/tajo/storage/FileTablespace.java | 2 +- .../java/org/apache/tajo/storage/RawFile.java | 9 +- .../java/org/apache/tajo/storage/RowFile.java | 9 +- .../apache/tajo/storage/avro/AvroAppender.java | 6 +- .../tajo/storage/json/JsonLineDeserializer.java | 4 +- .../tajo/storage/json/JsonLineSerializer.java | 4 +- .../org/apache/tajo/storage/orc/ORCScanner.java | 6 +- .../tajo/storage/parquet/ParquetAppender.java | 5 - .../storage/rawfile/DirectRawFileWriter.java | 18 +- .../org/apache/tajo/storage/rcfile/RCFile.java | 14 - .../sequencefile/SequenceFileAppender.java | 22 - .../tajo/storage/text/DelimitedLineReader.java | 4 +- tajo-thirdparty/asm/pom.xml | 5 - 269 files changed, 4692 insertions(+), 3292 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/tajo/blob/fe0b8a76/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/MetadataProvider.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/tajo/blob/fe0b8a76/tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/CatalogServer.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/tajo/blob/fe0b8a76/tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/LinkedMetadataManager.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/tajo/blob/fe0b8a76/tajo-catalog/tajo-catalog-server/src/test/java/org/apache/tajo/catalog/TestLinkedMetadataManager.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/tajo/blob/fe0b8a76/tajo-core/src/main/java/org/apache/tajo/master/TajoMaster.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/tajo/blob/fe0b8a76/tajo-core/src/test/java/org/apache/tajo/engine/query/TestHBaseTable.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/tajo/blob/fe0b8a76/tajo-project/pom.xml ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/tajo/blob/fe0b8a76/tajo-storage/tajo-storage-common/src/main/java/org/apache/tajo/storage/Tablespace.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/tajo/blob/fe0b8a76/tajo-storage/tajo-storage-hbase/src/main/java/org/apache/tajo/storage/hbase/HBaseTablespace.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/tajo/blob/fe0b8a76/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/FileTablespace.java ----------------------------------------------------------------------
