Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/tajo into 
index_support


Project: http://git-wip-us.apache.org/repos/asf/tajo/repo
Commit: http://git-wip-us.apache.org/repos/asf/tajo/commit/8ec099c8
Tree: http://git-wip-us.apache.org/repos/asf/tajo/tree/8ec099c8
Diff: http://git-wip-us.apache.org/repos/asf/tajo/diff/8ec099c8

Branch: refs/heads/index_support
Commit: 8ec099c8d048cbc741d74b329619a899dca8c04e
Parents: 4d01fca 03294e1
Author: Jihoon Son <[email protected]>
Authored: Sat May 30 13:04:47 2015 +0900
Committer: Jihoon Son <[email protected]>
Committed: Sat May 30 13:04:47 2015 +0900

----------------------------------------------------------------------
 CHANGES                                         |  26 +-
 .../apache/tajo/client/SessionConnection.java   |  14 +
 .../main/java/org/apache/tajo/SessionVars.java  |   3 +
 .../java/org/apache/tajo/conf/TajoConf.java     |  14 +-
 tajo-common/src/main/proto/tajo_protos.proto    |   6 +
 tajo-core/pom.xml                               |   1 +
 .../BroadcastJoinMarkCandidateVisitor.java      |  72 ----
 .../planner/BroadcastJoinPlanVisitor.java       |  60 ----
 .../tajo/engine/planner/global/DataChannel.java |   4 +
 .../engine/planner/global/ExecutionBlock.java   | 117 ++++++-
 .../planner/global/ExecutionBlockCursor.java    | 101 +++---
 .../engine/planner/global/ExecutionQueue.java   |  43 +++
 .../engine/planner/global/GlobalPlanner.java    | 263 +-------------
 .../tajo/engine/planner/global/MasterPlan.java  |  25 +-
 .../planner/global/ParallelExecutionQueue.java  | 126 +++++++
 .../global/builder/DistinctGroupbyBuilder.java  |   9 +-
 .../BaseGlobalPlanRewriteRuleProvider.java      |   6 +-
 .../rewriter/GlobalPlanRewriteEngine.java       |   5 +-
 .../global/rewriter/GlobalPlanRewriteRule.java  |   9 +-
 .../rewriter/rules/BroadcastJoinRule.java       | 348 +++++++++++++++++++
 .../rules/GlobalPlanEqualityTester.java         |   6 +-
 .../rewriter/rules/GlobalPlanRewriteUtil.java   | 216 ++++++++++++
 .../planner/physical/CommonHashJoinExec.java    |  13 +
 .../DistinctGroupbyThirdAggregationExec.java    |   2 +-
 .../apache/tajo/engine/utils/ThreadUtil.java    | 149 --------
 .../org/apache/tajo/ha/HdfsServiceTracker.java  |  13 +-
 .../ExplainGlobalPlanPreprocessorForTest.java   |   3 +-
 .../NonForwardQueryResultSystemScanner.java     |   5 +-
 .../apache/tajo/master/exec/QueryExecutor.java  |   2 +-
 .../tajo/master/rm/TajoResourceTracker.java     |   9 +
 .../apache/tajo/master/rm/WorkerResource.java   |  16 +-
 .../tajo/querymaster/DefaultTaskScheduler.java  |   2 +-
 .../java/org/apache/tajo/querymaster/Query.java |  89 +++--
 .../tajo/querymaster/QueryMasterTask.java       |   2 +-
 .../apache/tajo/querymaster/Repartitioner.java  |  62 +---
 .../java/org/apache/tajo/querymaster/Stage.java |   7 +-
 .../resource/DefaultResourceCalculator.java     | 109 ++++++
 .../org/apache/tajo/resource/NodeResource.java  | 188 ++++++++++
 .../org/apache/tajo/resource/NodeResources.java | 195 +++++++++++
 .../tajo/resource/ResourceCalculator.java       | 169 +++++++++
 .../apache/tajo/worker/NodeResourceManager.java | 148 ++++++++
 .../apache/tajo/worker/NodeStatusUpdater.java   | 274 +++++++++++++++
 .../tajo/worker/WorkerHeartbeatService.java     |   1 +
 .../worker/event/NodeResourceAllocateEvent.java |  46 +++
 .../event/NodeResourceDeallocateEvent.java      |  40 +++
 .../worker/event/NodeResourceManagerEvent.java  |  34 ++
 .../tajo/worker/event/NodeStatusEvent.java      |  40 +++
 .../tajo/ws/rs/resources/QueryResource.java     |  45 +--
 .../ws/rs/resources/QueryResultResource.java    |   2 +-
 .../main/proto/ResourceTrackerProtocol.proto    |  27 ++
 .../src/main/proto/TajoWorkerProtocol.proto     |  16 +
 .../java/org/apache/tajo/QueryTestCaseBase.java |  16 +-
 .../org/apache/tajo/TajoTestingCluster.java     |  10 +-
 .../org/apache/tajo/benchmark/TestTPCH.java     |  25 +-
 .../engine/planner/TestQueryValidation.java     |  17 +-
 .../tajo/engine/query/TestGroupByQuery.java     |   6 +-
 .../engine/query/TestInnerJoinWithSubQuery.java |   7 +
 .../tajo/engine/query/TestOuterJoinQuery.java   |  20 +-
 .../apache/tajo/engine/query/TestSortQuery.java |   7 +
 .../tajo/engine/query/TestUnionQuery.java       |  13 +
 .../tajo/master/TestExecutionBlockCursor.java   |   6 +-
 .../apache/tajo/master/TestGlobalPlanner.java   | 347 ------------------
 .../apache/tajo/querymaster/TestKillQuery.java  |   4 +-
 .../org/apache/tajo/resource/TestResources.java |  48 +++
 .../tajo/worker/MockNodeStatusUpdater.java      | 105 ++++++
 .../tajo/worker/TestNodeResourceManager.java    | 235 +++++++++++++
 .../tajo/worker/TestNodeStatusUpdater.java      | 115 ++++++
 .../tajo/ws/rs/resources/TestQueryResource.java |  56 ++-
 .../rs/resources/TestQueryResultResource.java   | 122 +++++--
 .../testBroadcastTwoPartJoin.sql                |   2 +-
 .../testThetaJoinKeyPairs.sql                   |  20 ++
 .../testSubQuerySortAfterGroupMultiBlocks.sql   |   5 +
 .../resources/queries/TestTPCH/testTPCHQ5.sql   |  24 ++
 .../TestUnionQuery/testComplexUnion1.sql        |  27 ++
 .../TestUnionQuery/testComplexUnion2.sql        |  35 ++
 .../queries/default/complex_union_1.sql         |  29 --
 .../queries/default/complex_union_2.sql         |  35 --
 .../testBroadcastTwoPartJoin.Hash.plan          | 135 +++----
 ...stBroadcastTwoPartJoin.Hash_NoBroadcast.plan |  46 +--
 .../testBroadcastTwoPartJoin.Sort.plan          | 135 +++----
 ...stBroadcastTwoPartJoin.Sort_NoBroadcast.plan |  46 +--
 .../testComplexJoinCondition1.Hash.plan         |   5 +-
 .../testComplexJoinCondition1.Sort.plan         |   5 +-
 .../testComplexJoinCondition2.Hash.plan         |   5 +-
 .../testComplexJoinCondition2.Sort.plan         |   5 +-
 .../testComplexJoinCondition3.Hash.plan         |   5 +-
 .../testComplexJoinCondition3.Sort.plan         |   5 +-
 .../testComplexJoinCondition4.Hash.plan         |   5 +-
 .../testComplexJoinCondition4.Sort.plan         |   5 +-
 .../testCrossJoin.1.Hash.plan                   |   7 +-
 .../testCrossJoin.1.Sort.plan                   |   7 +-
 .../testCrossJoin.2.Hash.plan                   |   1 -
 .../testCrossJoin.2.Sort.plan                   |   1 -
 .../testCrossJoin.3.Hash.plan                   |   3 +-
 .../testCrossJoin.3.Sort.plan                   |   3 +-
 .../testCrossJoin.4.Hash.plan                   |   3 +-
 .../testCrossJoin.4.Sort.plan                   |   3 +-
 .../testCrossJoin.5.Hash.plan                   |   7 +-
 .../testCrossJoin.5.Sort.plan                   |   7 +-
 .../testCrossJoinAndCaseWhen.Hash.plan          |   5 +-
 .../testCrossJoinAndCaseWhen.Sort.plan          |   5 +-
 .../testCrossJoinWithAsterisk1.Hash.plan        |   5 +-
 .../testCrossJoinWithAsterisk1.Sort.plan        |   5 +-
 .../testCrossJoinWithAsterisk2.Hash.plan        |   7 +-
 .../testCrossJoinWithAsterisk2.Sort.plan        |   7 +-
 .../testCrossJoinWithAsterisk3.Hash.plan        |   7 +-
 .../testCrossJoinWithAsterisk3.Sort.plan        |   7 +-
 .../testCrossJoinWithAsterisk4.Hash.plan        |   7 +-
 .../testCrossJoinWithAsterisk4.Sort.plan        |   7 +-
 .../testCrossJoinWithEmptyTable1.Hash.plan      |   5 +-
 .../testCrossJoinWithEmptyTable1.Sort.plan      |   5 +-
 ...sJoinWithThetaJoinConditionInWhere.Hash.plan |   1 -
 ...sJoinWithThetaJoinConditionInWhere.Sort.plan |   1 -
 .../testDifferentTypesJoinCondition.Hash.plan   |   1 -
 .../testDifferentTypesJoinCondition.Sort.plan   |   1 -
 .../testInnerJoinAndCaseWhen.Hash.plan          |   5 +-
 .../testInnerJoinAndCaseWhen.Sort.plan          |   5 +-
 .../testInnerJoinWithEmptyTable.Hash.plan       |   5 +-
 .../testInnerJoinWithEmptyTable.Sort.plan       |   5 +-
 ...rJoinWithThetaJoinConditionInWhere.Hash.plan |   3 +-
 ...rJoinWithThetaJoinConditionInWhere.Sort.plan |   3 +-
 .../testJoinAsterisk.Hash.plan                  |   1 -
 .../testJoinAsterisk.Sort.plan                  |   1 -
 .../testJoinCoReferredEvals1.Hash.plan          |   5 +-
 .../testJoinCoReferredEvals1.Sort.plan          |   5 +-
 ...tJoinCoReferredEvalsWithSameExprs1.Hash.plan |   7 +-
 ...tJoinCoReferredEvalsWithSameExprs1.Sort.plan |   7 +-
 ...tJoinCoReferredEvalsWithSameExprs2.Hash.plan |  11 +-
 ...tJoinCoReferredEvalsWithSameExprs2.Sort.plan |  11 +-
 .../testJoinOnMultipleDatabases.Hash.plan       | 135 +++----
 ...oinOnMultipleDatabases.Hash_NoBroadcast.plan |  46 +--
 .../testJoinOnMultipleDatabases.Sort.plan       | 135 +++----
 ...oinOnMultipleDatabases.Sort_NoBroadcast.plan |  46 +--
 .../testJoinWithMultipleJoinQual1.Hash.plan     | 137 +++-----
 ...nWithMultipleJoinQual1.Hash_NoBroadcast.plan |  46 +--
 .../testJoinWithMultipleJoinQual1.Sort.plan     | 137 +++-----
 ...nWithMultipleJoinQual1.Sort_NoBroadcast.plan |  46 +--
 .../testJoinWithOrPredicates.Hash.plan          |   7 +-
 .../testJoinWithOrPredicates.Sort.plan          |   7 +-
 .../testNaturalJoin.Hash.plan                   |   7 +-
 .../testNaturalJoin.Sort.plan                   |   7 +-
 .../TestInnerJoinQuery/testTPCHQ2Join.Hash.plan | 137 +++-----
 .../testTPCHQ2Join.Hash_NoBroadcast.plan        |  46 +--
 .../TestInnerJoinQuery/testTPCHQ2Join.Sort.plan | 137 +++-----
 .../testTPCHQ2Join.Sort_NoBroadcast.plan        |  46 +--
 .../testWhereClauseJoin1.Hash.plan              |   5 +-
 .../testWhereClauseJoin1.Sort.plan              |   5 +-
 .../testWhereClauseJoin2.Hash.plan              |   5 +-
 .../testWhereClauseJoin2.Sort.plan              |   5 +-
 .../testWhereClauseJoin3.Hash.plan              |   5 +-
 .../testWhereClauseJoin3.Sort.plan              |   5 +-
 .../testWhereClauseJoin4.Hash.plan              |   7 +-
 .../testWhereClauseJoin4.Sort.plan              |   7 +-
 .../testWhereClauseJoin5.Hash.plan              |  33 +-
 .../testWhereClauseJoin5.Sort.plan              |  33 +-
 .../testWhereClauseJoin6.Hash.plan              |  37 +-
 .../testWhereClauseJoin6.Sort.plan              |  37 +-
 .../testBroadcastSubquery.Hash.plan             | 118 ++-----
 .../testBroadcastSubquery.Sort.plan             | 118 ++-----
 .../testBroadcastSubquery2.Hash.plan            | 180 ++++------
 ...testBroadcastSubquery2.Hash_NoBroadcast.plan |  48 +--
 .../testBroadcastSubquery2.Sort.plan            | 180 ++++------
 ...testBroadcastSubquery2.Sort_NoBroadcast.plan |  48 +--
 .../testComplexJoinCondition5.Hash.plan         |  69 ++--
 .../testComplexJoinCondition5.Sort.plan         |  69 ++--
 .../testComplexJoinCondition6.Hash.plan         |  94 ++---
 .../testComplexJoinCondition6.Sort.plan         |  94 ++---
 .../testComplexJoinCondition7.Hash.plan         |  94 ++---
 .../testComplexJoinCondition7.Sort.plan         |  94 ++---
 .../testJoinWithMultipleJoinQual2.Hash.plan     |  88 ++---
 .../testJoinWithMultipleJoinQual2.Sort.plan     |  88 ++---
 .../testJoinWithMultipleJoinQual3.Hash.plan     | 109 ++----
 ...nWithMultipleJoinQual3.Hash_NoBroadcast.plan |  48 +--
 .../testJoinWithMultipleJoinQual3.Sort.plan     | 109 ++----
 ...nWithMultipleJoinQual3.Sort_NoBroadcast.plan |  48 +--
 .../testJoinWithMultipleJoinQual4.Hash.plan     | 109 ++----
 ...nWithMultipleJoinQual4.Hash_NoBroadcast.plan |  48 +--
 .../testJoinWithMultipleJoinQual4.Sort.plan     | 109 ++----
 ...nWithMultipleJoinQual4.Sort_NoBroadcast.plan |  48 +--
 .../testThetaJoinKeyPairs.Hash.plan             | 142 ++++++++
 .../testThetaJoinKeyPairs.Hash_NoBroadcast.plan | 196 +++++++++++
 .../testThetaJoinKeyPairs.Sort.plan             | 142 ++++++++
 .../testThetaJoinKeyPairs.Sort_NoBroadcast.plan | 196 +++++++++++
 .../testThetaJoinKeyPairs.result                |  27 ++
 .../testComplexJoinsWithCaseWhen.Hash.plan      |  33 +-
 .../testComplexJoinsWithCaseWhen.Sort.plan      |  33 +-
 .../testComplexJoinsWithCaseWhen2.Hash.plan     |  91 ++---
 .../testComplexJoinsWithCaseWhen2.Sort.plan     |  91 ++---
 .../testInnerAndOuterWithEmpty.1.Hash.plan      |  17 +-
 .../testInnerAndOuterWithEmpty.1.Sort.plan      |  17 +-
 .../testJoinWithMultipleJoinTypes.Hash.plan     | 108 ++----
 .../testJoinWithMultipleJoinTypes.Sort.plan     | 108 ++----
 .../testFullOuterJoin1.Hash.plan                |  58 +++-
 .../testFullOuterJoin1.Sort.plan                |  58 +++-
 ...lOuterJoinPredicationCaseByCase1.1.Hash.plan | 153 ++++++++
 ...edicationCaseByCase1.1.Hash_NoBroadcast.plan | 153 ++++++++
 ...lOuterJoinPredicationCaseByCase1.1.Sort.plan | 153 ++++++++
 ...edicationCaseByCase1.1.Sort_NoBroadcast.plan | 153 ++++++++
 ...FullOuterJoinPredicationCaseByCase1.1.result |   9 +
 .../testFullOuterJoinWithEmptyTable1.Hash.plan  |  58 +++-
 .../testFullOuterJoinWithEmptyTable1.Sort.plan  |  58 +++-
 ...testJoinFilterOfRowPreservedTable1.Hash.plan |   4 +-
 ...testJoinFilterOfRowPreservedTable1.Sort.plan |   4 +-
 .../testLeftOuterJoin1.Hash.plan                |   4 +-
 .../testLeftOuterJoin1.Sort.plan                |   4 +-
 .../testLeftOuterJoin2.Hash.plan                |  14 +-
 .../testLeftOuterJoin2.Sort.plan                |  14 +-
 .../testLeftOuterJoin3.Hash.plan                |  22 +-
 .../testLeftOuterJoin3.Sort.plan                |  22 +-
 ...tOuterJoinPredicationCaseByCase1.1.Hash.plan |  14 +-
 ...tOuterJoinPredicationCaseByCase1.1.Sort.plan |  14 +-
 ...tOuterJoinPredicationCaseByCase2.1.Hash.plan |  18 +-
 ...tOuterJoinPredicationCaseByCase2.1.Sort.plan |  18 +-
 ...uterJoinPredicationCaseByCase2_1.1.Hash.plan |  21 +-
 ...uterJoinPredicationCaseByCase2_1.1.Sort.plan |  21 +-
 ...tOuterJoinPredicationCaseByCase3.1.Hash.plan |  14 +-
 ...tOuterJoinPredicationCaseByCase3.1.Sort.plan |  14 +-
 ...tOuterJoinPredicationCaseByCase4.1.Hash.plan |  14 +-
 ...tOuterJoinPredicationCaseByCase4.1.Sort.plan |  14 +-
 ...tOuterJoinPredicationCaseByCase5.1.Hash.plan |  14 +-
 ...tOuterJoinPredicationCaseByCase5.1.Sort.plan |  14 +-
 ...tOuterJoinPredicationCaseByCase6.1.Hash.plan |  14 +-
 ...tOuterJoinPredicationCaseByCase6.1.Sort.plan |  14 +-
 ...testLeftOuterJoinWithConstantExpr1.Hash.plan |   4 +-
 ...testLeftOuterJoinWithConstantExpr1.Sort.plan |   4 +-
 .../testLeftOuterJoinWithEmptyTable1.Hash.plan  |   4 +-
 .../testLeftOuterJoinWithEmptyTable1.Sort.plan  |   4 +-
 .../testLeftOuterJoinWithEmptyTable2.Hash.plan  |   8 +-
 .../testLeftOuterJoinWithEmptyTable2.Sort.plan  |   8 +-
 .../testLeftOuterJoinWithEmptyTable3.Hash.plan  |  12 +-
 .../testLeftOuterJoinWithEmptyTable3.Sort.plan  |  12 +-
 .../testLeftOuterJoinWithEmptyTable4.Hash.plan  |  38 +-
 ...terJoinWithEmptyTable4.Hash_NoBroadcast.plan |  32 +-
 .../testLeftOuterJoinWithEmptyTable4.Sort.plan  |  38 +-
 ...terJoinWithEmptyTable4.Sort_NoBroadcast.plan |  32 +-
 .../testLeftOuterJoinWithEmptyTable5.Hash.plan  |   8 +-
 .../testLeftOuterJoinWithEmptyTable5.Sort.plan  |   8 +-
 .../testLeftOuterJoinWithNull1.Hash.plan        |   4 +-
 .../testLeftOuterJoinWithNull1.Sort.plan        |   4 +-
 .../testLeftOuterJoinWithNull2.Hash.plan        |   4 +-
 .../testLeftOuterJoinWithNull2.Sort.plan        |   4 +-
 .../testLeftOuterJoinWithNull3.Hash.plan        |   4 +-
 .../testLeftOuterJoinWithNull3.Sort.plan        |   4 +-
 ...leBroadcastDataFileWithZeroLength2.Hash.plan |  14 +-
 ...leBroadcastDataFileWithZeroLength2.Sort.plan |  14 +-
 .../testOuterJoinAndCaseWhen1.Hash.plan         |  30 +-
 .../testOuterJoinAndCaseWhen1.Sort.plan         |  30 +-
 .../testRightOuterJoin1.Hash.plan               |   4 +-
 .../testRightOuterJoin1.Sort.plan               |   4 +-
 ...tOuterJoinPredicationCaseByCase1.1.Hash.plan | 101 ++++++
 ...edicationCaseByCase1.1.Hash_NoBroadcast.plan | 128 +++++++
 ...tOuterJoinPredicationCaseByCase1.1.Sort.plan | 101 ++++++
 ...edicationCaseByCase1.1.Sort_NoBroadcast.plan | 128 +++++++
 ...ightOuterJoinPredicationCaseByCase1.1.result |   4 +
 ...tOuterJoinPredicationCaseByCase2.1.Hash.plan |  76 ++++
 ...edicationCaseByCase2.1.Hash_NoBroadcast.plan | 132 +++++++
 ...tOuterJoinPredicationCaseByCase2.1.Sort.plan |  76 ++++
 ...edicationCaseByCase2.1.Sort_NoBroadcast.plan | 132 +++++++
 ...ightOuterJoinPredicationCaseByCase2.1.result |   4 +
 ...tOuterJoinPredicationCaseByCase3.1.Hash.plan | 101 ++++++
 ...edicationCaseByCase3.1.Hash_NoBroadcast.plan | 128 +++++++
 ...tOuterJoinPredicationCaseByCase3.1.Sort.plan | 101 ++++++
 ...edicationCaseByCase3.1.Sort_NoBroadcast.plan | 128 +++++++
 ...ightOuterJoinPredicationCaseByCase3.1.result |   4 +
 .../testRightOuterJoinWithEmptyTable1.Hash.plan |   4 +-
 .../testRightOuterJoinWithEmptyTable1.Sort.plan |   4 +-
 .../testJoinWithDifferentShuffleKey.1.Hash.plan |  36 +-
 ...hDifferentShuffleKey.1.Hash_NoBroadcast.plan |  36 +-
 .../testJoinWithDifferentShuffleKey.1.Sort.plan |  36 +-
 ...hDifferentShuffleKey.1.Sort_NoBroadcast.plan |  36 +-
 ...testLeftOuterJoinWithConstantExpr2.Hash.plan |  69 ++--
 ...testLeftOuterJoinWithConstantExpr2.Sort.plan |  69 ++--
 ...tLeftOuterJoinWithEmptySubquery1.1.Hash.plan |  96 ++---
 ...tLeftOuterJoinWithEmptySubquery1.1.Sort.plan |  96 ++---
 ...tLeftOuterJoinWithEmptySubquery2.1.Hash.plan |  88 ++---
 ...tLeftOuterJoinWithEmptySubquery2.1.Sort.plan |  88 ++---
 .../testSubQuerySortAfterGroupMultiBlocks.plan  | 112 ++++++
 ...testSubQuerySortAfterGroupMultiBlocks.result |   5 +
 .../results/TestTPCH/testQ1OrderBy.plan         |  88 +++++
 .../results/TestTPCH/testQ1OrderBy.result       |   2 +-
 .../results/TestTPCH/testQ2FourJoins.plan       | 228 ++++++++++++
 .../results/TestTPCH/testQ2FourJoins.result     |   2 +-
 .../results/TestTPCH/testTPCH14Expr.plan        | 119 +++++++
 .../results/TestTPCH/testTPCH14Expr.result      |   2 +-
 .../resources/results/TestTPCH/testTPCHQ5.plan  | 332 ++++++++++++++++++
 .../results/TestTPCH/testTPCHQ5.result          |   2 +
 .../TestTajoCli/testHelpSessionVars.result      |   1 +
 .../TestUnionQuery/testComplexUnion1.plan       |  80 +++++
 .../TestUnionQuery/testComplexUnion1.result     |   6 +
 .../TestUnionQuery/testComplexUnion2.plan       | 116 +++++++
 .../TestUnionQuery/testComplexUnion2.result     |   7 +
 .../sphinx/table_management/table_overview.rst  |  29 +-
 .../org/apache/tajo/jdbc/JdbcConnection.java    |   6 +-
 .../org/apache/tajo/plan/LogicalPlanner.java    |   6 +
 .../plan/expr/AggregationFunctionCallEval.java  |  63 ++--
 .../function/python/PythonScriptEngine.java     |  17 +-
 .../plan/function/python/TajoScriptEngine.java  |  13 +-
 .../tajo/plan/logical/CreateTableNode.java      |   5 +
 .../org/apache/tajo/plan/logical/JoinNode.java  |  22 +-
 .../plan/rewrite/rules/FilterPushDownRule.java  |   1 +
 .../tajo/plan/serder/EvalNodeDeserializer.java  |  14 +-
 .../tajo/plan/serder/EvalNodeSerializer.java    |   4 +-
 .../plan/serder/LogicalNodeDeserializer.java    |   5 -
 .../tajo/plan/serder/LogicalNodeSerializer.java |  18 +-
 tajo-plan/src/main/proto/Plan.proto             |  12 +-
 .../java/org/apache/tajo/storage/DiskUtil.java  |   4 +-
 306 files changed, 9531 insertions(+), 4912 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tajo/blob/8ec099c8/CHANGES
----------------------------------------------------------------------
diff --cc CHANGES
index bad7753,85c28ce..9f6795d
--- a/CHANGES
+++ b/CHANGES
@@@ -136,10 -150,14 +150,18 @@@ Release 0.11.0 - unrelease
  
    BUG FIXES
  
 +    TAJO-1608: Fix test failure in index_support branch. (jihoon)
 +
 +    TAJO-1594: Catalog schema is invalid for some databases. (jihoon)
 +
+     TAJO-1630: Test failure after TAJO-1130. (jihoon)
+ 
+     TAJO-1623: INSERT INTO with wrong target columns causes NPE. (hyunsik)
+ 
+     TAJO-1621: Compilation error with hadoop 2.7.0. (jinho)
+ 
+     TAJO-1619: JDBC program is stuck after closing. (jihoon)
+ 
      TAJO-1620: random() in an SQL should generate RANDOM numbers.
      (Contributed by Jongyoung Park, Committed by jihoon)
  

http://git-wip-us.apache.org/repos/asf/tajo/blob/8ec099c8/tajo-client/src/main/java/org/apache/tajo/client/SessionConnection.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/tajo/blob/8ec099c8/tajo-common/src/main/java/org/apache/tajo/SessionVars.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/tajo/blob/8ec099c8/tajo-common/src/main/java/org/apache/tajo/conf/TajoConf.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/tajo/blob/8ec099c8/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/GlobalPlanner.java
----------------------------------------------------------------------
diff --cc 
tajo-core/src/main/java/org/apache/tajo/engine/planner/global/GlobalPlanner.java
index c149f2f,89e887a..bb2d9ad
--- 
a/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/GlobalPlanner.java
+++ 
b/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/GlobalPlanner.java
@@@ -1619,44 -1408,5 +1417,19 @@@ public class GlobalPlanner 
  
        return node;
      }
 +
 +    @Override
 +    public LogicalNode visitCreateIndex(GlobalPlanContext context, 
LogicalPlan plan, LogicalPlan.QueryBlock queryBlock,
 +                                        CreateIndexNode node, 
Stack<LogicalNode> stack) throws PlanningException {
 +      LogicalNode child = super.visitCreateIndex(context, plan, queryBlock, 
node, stack);
 +
 +      // Don't separate execution block. CreateIndex is pushed to the first 
execution block.
 +      ExecutionBlock childBlock = context.execBlockMap.remove(child.getPID());
 +      node.setChild(childBlock.getPlan());
 +      childBlock.setPlan(node);
 +      context.execBlockMap.put(node.getPID(), childBlock);
 +
 +      return node;
 +    }
    }
- 
-   @SuppressWarnings("unused")
-   private static class ConsecutiveUnionFinder extends 
BasicLogicalPlanVisitor<List<UnionNode>, LogicalNode> {
-     @Override
-     public LogicalNode visitUnion(List<UnionNode> unionNodeList, LogicalPlan 
plan, LogicalPlan.QueryBlock queryBlock,
-                                   UnionNode node, Stack<LogicalNode> stack)
-         throws PlanningException {
-       if (node.getType() == NodeType.UNION) {
-         unionNodeList.add(node);
-       }
- 
-       stack.push(node);
-       TableSubQueryNode leftSubQuery = node.getLeftChild();
-       TableSubQueryNode rightSubQuery = node.getRightChild();
-       if (leftSubQuery.getSubQuery().getType() == NodeType.UNION) {
-         visit(unionNodeList, plan, queryBlock, leftSubQuery, stack);
-       }
-       if (rightSubQuery.getSubQuery().getType() == NodeType.UNION) {
-         visit(unionNodeList, plan, queryBlock, rightSubQuery, stack);
-       }
-       stack.pop();
- 
-       return node;
-     }
-   }
  }

http://git-wip-us.apache.org/repos/asf/tajo/blob/8ec099c8/tajo-core/src/main/java/org/apache/tajo/master/exec/NonForwardQueryResultSystemScanner.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/tajo/blob/8ec099c8/tajo-core/src/main/java/org/apache/tajo/master/exec/QueryExecutor.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/tajo/blob/8ec099c8/tajo-core/src/main/java/org/apache/tajo/querymaster/Query.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/tajo/blob/8ec099c8/tajo-core/src/main/java/org/apache/tajo/querymaster/QueryMasterTask.java
----------------------------------------------------------------------
diff --cc 
tajo-core/src/main/java/org/apache/tajo/querymaster/QueryMasterTask.java
index 8441922,2809a70..0737422
--- a/tajo-core/src/main/java/org/apache/tajo/querymaster/QueryMasterTask.java
+++ b/tajo-core/src/main/java/org/apache/tajo/querymaster/QueryMasterTask.java
@@@ -362,17 -361,9 +362,17 @@@ public class QueryMasterTask extends Co
              tableDescMap.put(scanNode.getCanonicalName(), 
scanNode.getTableDesc());
            }
          }
 +
 +        scanNodes = PlannerUtil.findAllNodes(block.getRoot(), 
NodeType.INDEX_SCAN);
 +        if (scanNodes != null) {
 +          for (LogicalNode eachScanNode : scanNodes) {
 +            ScanNode scanNode = (ScanNode) eachScanNode;
 +            tableDescMap.put(scanNode.getCanonicalName(), 
scanNode.getTableDesc());
 +          }
 +        }
        }
        MasterPlan masterPlan = new MasterPlan(queryId, queryContext, plan);
-       queryMasterContext.getGlobalPlanner().build(masterPlan);
+       queryMasterContext.getGlobalPlanner().build(queryContext, masterPlan);
  
        query = new Query(queryTaskContext, queryId, querySubmitTime,
            "", queryTaskContext.getEventHandler(), masterPlan);

http://git-wip-us.apache.org/repos/asf/tajo/blob/8ec099c8/tajo-core/src/main/java/org/apache/tajo/ws/rs/resources/QueryResource.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/tajo/blob/8ec099c8/tajo-core/src/test/java/org/apache/tajo/QueryTestCaseBase.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/tajo/blob/8ec099c8/tajo-core/src/test/java/org/apache/tajo/master/TestExecutionBlockCursor.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/tajo/blob/8ec099c8/tajo-core/src/test/java/org/apache/tajo/querymaster/TestKillQuery.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/tajo/blob/8ec099c8/tajo-core/src/test/resources/results/TestTajoCli/testHelpSessionVars.result
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/tajo/blob/8ec099c8/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlanner.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/tajo/blob/8ec099c8/tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/FilterPushDownRule.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/tajo/blob/8ec099c8/tajo-plan/src/main/java/org/apache/tajo/plan/serder/LogicalNodeDeserializer.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/tajo/blob/8ec099c8/tajo-plan/src/main/java/org/apache/tajo/plan/serder/LogicalNodeSerializer.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/tajo/blob/8ec099c8/tajo-plan/src/main/proto/Plan.proto
----------------------------------------------------------------------

Reply via email to