[
https://issues.apache.org/jira/browse/TAJO-1436?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14392604#comment-14392604
]
Hudson commented on TAJO-1436:
------------------------------
SUCCESS: Integrated in Tajo-master-build #647 (See
[https://builds.apache.org/job/Tajo-master-build/647/])
TAJO-1436: Add Bind method to EvalNode. (jihoonson: rev
f4c9e54c88fb9e69023da2b0a74ead76ad2a6f8d)
*
tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/HashLeftAntiJoinExec.java
* tajo-core/src/test/java/org/apache/tajo/engine/eval/TestEvalTreeUtil.java
* CHANGES
*
tajo-plan/src/main/java/org/apache/tajo/plan/exprrewrite/rules/ConstantFolding.java
*
tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/SeqScanExec.java
*
tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/NLJoinExec.java
* tajo-core/src/main/java/org/apache/tajo/engine/utils/TupleUtil.java
* tajo-plan/src/main/java/org/apache/tajo/plan/expr/InEval.java
*
tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/SelectionExec.java
* tajo-plan/src/main/java/org/apache/tajo/plan/expr/IsNullEval.java
* tajo-plan/src/main/java/org/apache/tajo/plan/expr/CastEval.java
* tajo-plan/src/main/java/org/apache/tajo/plan/expr/FieldEval.java
* tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlanner.java
* tajo-core/src/main/java/org/apache/tajo/engine/codegen/EvalCodeGenContext.java
*
tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/NLLeftOuterJoinExec.java
*
tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/RightOuterMergeJoinExec.java
* tajo-plan/src/main/java/org/apache/tajo/plan/expr/SignedEval.java
*
tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/HashFullOuterJoinExec.java
* tajo-core/src/main/java/org/apache/tajo/engine/codegen/EvalCodeGenerator.java
*
tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/EvalExprExec.java
* tajo-common/src/main/java/org/apache/tajo/conf/TajoConf.java
*
tajo-plan/src/main/java/org/apache/tajo/plan/expr/AggregationFunctionCallEval.java
* tajo-plan/src/main/java/org/apache/tajo/plan/expr/EvalTreeUtil.java
*
tajo-plan/src/main/java/org/apache/tajo/plan/expr/PatternMatchPredicateEval.java
*
tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/WindowAggExec.java
* tajo-plan/src/main/java/org/apache/tajo/plan/expr/FunctionEval.java
*
tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/HashJoinExec.java
* tajo-core/src/main/java/org/apache/tajo/engine/planner/Projector.java
* tajo-plan/src/main/java/org/apache/tajo/plan/expr/GeneralFunctionEval.java
*
tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/AggregationExec.java
* tajo-plan/src/main/java/org/apache/tajo/plan/expr/ConstEval.java
* tajo-plan/src/main/java/org/apache/tajo/plan/expr/PartialBinaryExpr.java
* tajo-plan/src/main/java/org/apache/tajo/plan/expr/NotEval.java
*
tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/BNLJoinExec.java
*
tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/BSTIndexScanExec.java
* tajo-core/src/test/java/org/apache/tajo/engine/eval/TestEvalTree.java
* tajo-plan/src/main/java/org/apache/tajo/plan/expr/AlgebraicUtil.java
*
tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/HashLeftOuterJoinExec.java
* tajo-plan/src/main/java/org/apache/tajo/plan/expr/BinaryEval.java
*
tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/HavingExec.java
*
tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/HashAggregateExec.java
*
tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/DistinctGroupbyThirdAggregationExec.java
*
tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/DistinctGroupbySecondAggregationExec.java
* tajo-plan/src/main/java/org/apache/tajo/plan/expr/WindowFunctionEval.java
* tajo-core/src/main/java/org/apache/tajo/engine/codegen/CaseWhenEmitter.java
* tajo-core/src/test/java/org/apache/tajo/engine/eval/ExprTestBase.java
*
tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/MergeFullOuterJoinExec.java
*
tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/DistinctGroupbyHashAggregationExec.java
*
tajo-plan/src/main/java/org/apache/tajo/plan/rewrite/rules/PartitionedTableRewriter.java
* tajo-plan/src/main/java/org/apache/tajo/plan/expr/BetweenPredicateEval.java
*
tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/SortAggregateExec.java
* tajo-plan/src/main/java/org/apache/tajo/plan/expr/EvalNode.java
* tajo-plan/src/main/java/org/apache/tajo/plan/expr/CaseWhenEval.java
* tajo-core/src/main/java/org/apache/tajo/master/exec/QueryExecutor.java
* tajo-plan/src/main/java/org/apache/tajo/plan/expr/RowConstantEval.java
*
tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/CommonJoinExec.java
*
tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/MergeJoinExec.java
* tajo-plan/src/main/java/org/apache/tajo/plan/expr/UnaryEval.java
*
tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/DistinctGroupbyFirstAggregationExec.java
*
tajo-core/src/main/java/org/apache/tajo/master/exec/NonForwardQueryResultSystemScanner.java
*
tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/HashLeftSemiJoinExec.java
> Add Bind method to EvalNode
> ---------------------------
>
> Key: TAJO-1436
> URL: https://issues.apache.org/jira/browse/TAJO-1436
> Project: Tajo
> Issue Type: Improvement
> Components: operator/expression
> Reporter: Hyunsik Choi
> Assignee: Navis
> Fix For: 0.11.0
>
>
> EvalNode just has eval() method to evaluate some tuples. It does not have any
> method to prepare actual execution.
> For example, FieldEval should know an actual field index of an input tuple.
> This process is also performed in eval() method.
> It has some problems:
> * eval() method should involve two works, and it does different behavior
> with some flag or null check.
> * 'if condition' in eval() method for different behaviors involves
> unnecessary branches, causing performance degradation.
> So, we should add {{bind(Schema)}} method to EvalNode and then move some
> preparation code from eval() to bind(Schame) method.
> Also, we should refactor the signature {{eval(Schema, Tuple)}} to
> {{eval(Tuple)}}.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)