tajo-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jihoon...@apache.org
Subject [2/2] tajo git commit: TAJO-1597: Problem of ignoring theta join condition. (jihoon)
Date Fri, 24 Jul 2015 03:33:20 GMT
TAJO-1597: Problem of ignoring theta join condition. (jihoon)

Closes #646


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

Branch: refs/heads/master
Commit: bcec5eb7e247dc983184b37a3dbb4143afd19ac8
Parents: 61d1d33
Author: Jihoon Son <jihoonson@apache.org>
Authored: Fri Jul 24 12:33:06 2015 +0900
Committer: Jihoon Son <jihoonson@apache.org>
Committed: Fri Jul 24 12:33:06 2015 +0900

----------------------------------------------------------------------
 CHANGES                                         |   2 +
 .../tajo/engine/query/TestInnerJoinQuery.java   |   1 -
 .../engine/query/TestInnerJoinWithSubQuery.java |   1 -
 .../engine/query/TestMultipleJoinTypes.java     |   1 -
 .../tajo/engine/query/TestOuterJoinQuery.java   |   2 -
 ...sJoinWithThetaJoinConditionInWhere.Hash.plan |   8 +-
 ...taJoinConditionInWhere.Hash_NoBroadcast.plan |  12 +-
 ...sJoinWithThetaJoinConditionInWhere.Sort.plan |   8 +-
 ...taJoinConditionInWhere.Sort_NoBroadcast.plan |  12 +-
 ...rJoinWithThetaJoinConditionInWhere.Hash.plan |   8 +-
 ...taJoinConditionInWhere.Hash_NoBroadcast.plan |  12 +-
 ...rJoinWithThetaJoinConditionInWhere.Sort.plan |   8 +-
 ...taJoinConditionInWhere.Sort_NoBroadcast.plan |  12 +-
 .../testBroadcastSubquery2.Hash.plan            |  28 ++--
 ...testBroadcastSubquery2.Hash_NoBroadcast.plan |  44 +++----
 .../testBroadcastSubquery2.Sort.plan            |  28 ++--
 ...testBroadcastSubquery2.Sort_NoBroadcast.plan |  44 +++----
 .../testJoinWithMultipleJoinQual4.Hash.plan     |  16 +--
 ...nWithMultipleJoinQual4.Hash_NoBroadcast.plan |  28 ++--
 .../testJoinWithMultipleJoinQual4.Sort.plan     |  16 +--
 ...nWithMultipleJoinQual4.Sort_NoBroadcast.plan |  28 ++--
 .../testThetaJoinKeyPairs.Hash.plan             | 128 ++++++++++---------
 .../testThetaJoinKeyPairs.Hash_NoBroadcast.plan | 114 +++++++++--------
 .../testThetaJoinKeyPairs.Sort.plan             | 128 ++++++++++---------
 .../testThetaJoinKeyPairs.Sort_NoBroadcast.plan | 114 +++++++++--------
 .../testThetaJoinKeyPairs.result                |   6 -
 ...rJoinWithThetaJoinConditionInWhere.Hash.plan |   8 +-
 ...taJoinConditionInWhere.Hash_NoBroadcast.plan |  12 +-
 ...rJoinWithThetaJoinConditionInWhere.Sort.plan |   8 +-
 ...taJoinConditionInWhere.Sort_NoBroadcast.plan |  12 +-
 ...rJoinWithThetaJoinConditionInWhere.Hash.plan |   8 +-
 ...taJoinConditionInWhere.Hash_NoBroadcast.plan |  12 +-
 ...rJoinWithThetaJoinConditionInWhere.Sort.plan |   8 +-
 ...taJoinConditionInWhere.Sort_NoBroadcast.plan |  12 +-
 .../org/apache/tajo/plan/LogicalOptimizer.java  |  13 +-
 .../org/apache/tajo/plan/expr/EvalTreeUtil.java |   2 +-
 .../plan/rewrite/rules/FilterPushDownRule.java  |  55 +++++++-
 37 files changed, 507 insertions(+), 452 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tajo/blob/bcec5eb7/CHANGES
----------------------------------------------------------------------
diff --git a/CHANGES b/CHANGES
index 6a75506..420aa4b 100644
--- a/CHANGES
+++ b/CHANGES
@@ -191,6 +191,8 @@ Release 0.11.0 - unreleased
 
   BUG FIXES
 
+    TAJO-1597: Problem of ignoring theta join condition. (jihoon)
+
     TAJO-1697: RCFile progress causes NPE occasionally. (jinho)
 
     TAJO-1689: Metrics file reporter prints histogram metric without group name.

http://git-wip-us.apache.org/repos/asf/tajo/blob/bcec5eb7/tajo-core/src/test/java/org/apache/tajo/engine/query/TestInnerJoinQuery.java
----------------------------------------------------------------------
diff --git a/tajo-core/src/test/java/org/apache/tajo/engine/query/TestInnerJoinQuery.java b/tajo-core/src/test/java/org/apache/tajo/engine/query/TestInnerJoinQuery.java
index ad851e7..88b3548 100644
--- a/tajo-core/src/test/java/org/apache/tajo/engine/query/TestInnerJoinQuery.java
+++ b/tajo-core/src/test/java/org/apache/tajo/engine/query/TestInnerJoinQuery.java
@@ -18,7 +18,6 @@
 
 package org.apache.tajo.engine.query;
 
-import com.google.protobuf.ServiceException;
 import org.apache.tajo.IntegrationTest;
 import org.apache.tajo.NamedTest;
 import org.junit.AfterClass;

http://git-wip-us.apache.org/repos/asf/tajo/blob/bcec5eb7/tajo-core/src/test/java/org/apache/tajo/engine/query/TestInnerJoinWithSubQuery.java
----------------------------------------------------------------------
diff --git a/tajo-core/src/test/java/org/apache/tajo/engine/query/TestInnerJoinWithSubQuery.java b/tajo-core/src/test/java/org/apache/tajo/engine/query/TestInnerJoinWithSubQuery.java
index 1869946..6c9546e 100644
--- a/tajo-core/src/test/java/org/apache/tajo/engine/query/TestInnerJoinWithSubQuery.java
+++ b/tajo-core/src/test/java/org/apache/tajo/engine/query/TestInnerJoinWithSubQuery.java
@@ -18,7 +18,6 @@
 
 package org.apache.tajo.engine.query;
 
-import com.google.protobuf.ServiceException;
 import org.apache.tajo.IntegrationTest;
 import org.apache.tajo.NamedTest;
 import org.junit.AfterClass;

http://git-wip-us.apache.org/repos/asf/tajo/blob/bcec5eb7/tajo-core/src/test/java/org/apache/tajo/engine/query/TestMultipleJoinTypes.java
----------------------------------------------------------------------
diff --git a/tajo-core/src/test/java/org/apache/tajo/engine/query/TestMultipleJoinTypes.java b/tajo-core/src/test/java/org/apache/tajo/engine/query/TestMultipleJoinTypes.java
index b4ab1d7..d3cde3d 100644
--- a/tajo-core/src/test/java/org/apache/tajo/engine/query/TestMultipleJoinTypes.java
+++ b/tajo-core/src/test/java/org/apache/tajo/engine/query/TestMultipleJoinTypes.java
@@ -18,7 +18,6 @@
 
 package org.apache.tajo.engine.query;
 
-import com.google.protobuf.ServiceException;
 import org.apache.tajo.IntegrationTest;
 import org.apache.tajo.NamedTest;
 import org.apache.tajo.QueryTestCaseBase;

http://git-wip-us.apache.org/repos/asf/tajo/blob/bcec5eb7/tajo-core/src/test/java/org/apache/tajo/engine/query/TestOuterJoinQuery.java
----------------------------------------------------------------------
diff --git a/tajo-core/src/test/java/org/apache/tajo/engine/query/TestOuterJoinQuery.java b/tajo-core/src/test/java/org/apache/tajo/engine/query/TestOuterJoinQuery.java
index 5274d2c..0b42a6d 100644
--- a/tajo-core/src/test/java/org/apache/tajo/engine/query/TestOuterJoinQuery.java
+++ b/tajo-core/src/test/java/org/apache/tajo/engine/query/TestOuterJoinQuery.java
@@ -18,7 +18,6 @@
 
 package org.apache.tajo.engine.query;
 
-import com.google.protobuf.ServiceException;
 import org.apache.tajo.IntegrationTest;
 import org.apache.tajo.NamedTest;
 import org.junit.AfterClass;
@@ -28,7 +27,6 @@ import org.junit.experimental.categories.Category;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
 
-import java.sql.ResultSet;
 import java.sql.SQLException;
 
 @Category(IntegrationTest.class)

http://git-wip-us.apache.org/repos/asf/tajo/blob/bcec5eb7/tajo-core/src/test/resources/results/TestInnerJoinQuery/testCrossJoinWithThetaJoinConditionInWhere.Hash.plan
----------------------------------------------------------------------
diff --git a/tajo-core/src/test/resources/results/TestInnerJoinQuery/testCrossJoinWithThetaJoinConditionInWhere.Hash.plan b/tajo-core/src/test/resources/results/TestInnerJoinQuery/testCrossJoinWithThetaJoinConditionInWhere.Hash.plan
index 27de587..d161811 100644
--- a/tajo-core/src/test/resources/results/TestInnerJoinQuery/testCrossJoinWithThetaJoinConditionInWhere.Hash.plan
+++ b/tajo-core/src/test/resources/results/TestInnerJoinQuery/testCrossJoinWithThetaJoinConditionInWhere.Hash.plan
@@ -4,9 +4,9 @@ PROJECTION(3)
   => Targets: a_name (TEXT), b_name (TEXT)
   => out schema: {(2) a_name (TEXT), b_name (TEXT)}
   => in  schema: {(4) a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)}
-   SELECTION(2)
+   SELECTION(6)
      => Search Cond: default.a.r_name (TEXT) < default.b.r_name (TEXT)
-      JOIN(6)(CROSS)
+      JOIN(7)(CROSS)
         => target list: a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)
         => out schema: {(4) a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)}
         => in schema: {(4) a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)}
@@ -43,9 +43,9 @@ PROJECTION(3)
   => Targets: a_name (TEXT), b_name (TEXT)
   => out schema: {(2) a_name (TEXT), b_name (TEXT)}
   => in  schema: {(4) a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)}
-   SELECTION(2)
+   SELECTION(6)
      => Search Cond: default.a.r_name (TEXT) < default.b.r_name (TEXT)
-      JOIN(6)(CROSS)
+      JOIN(7)(CROSS)
         => target list: a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)
         => out schema: {(4) a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)}
         => in schema: {(4) a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)}

http://git-wip-us.apache.org/repos/asf/tajo/blob/bcec5eb7/tajo-core/src/test/resources/results/TestInnerJoinQuery/testCrossJoinWithThetaJoinConditionInWhere.Hash_NoBroadcast.plan
----------------------------------------------------------------------
diff --git a/tajo-core/src/test/resources/results/TestInnerJoinQuery/testCrossJoinWithThetaJoinConditionInWhere.Hash_NoBroadcast.plan b/tajo-core/src/test/resources/results/TestInnerJoinQuery/testCrossJoinWithThetaJoinConditionInWhere.Hash_NoBroadcast.plan
index 0048ac6..cfbfa19 100644
--- a/tajo-core/src/test/resources/results/TestInnerJoinQuery/testCrossJoinWithThetaJoinConditionInWhere.Hash_NoBroadcast.plan
+++ b/tajo-core/src/test/resources/results/TestInnerJoinQuery/testCrossJoinWithThetaJoinConditionInWhere.Hash_NoBroadcast.plan
@@ -4,9 +4,9 @@ PROJECTION(3)
   => Targets: a_name (TEXT), b_name (TEXT)
   => out schema: {(2) a_name (TEXT), b_name (TEXT)}
   => in  schema: {(4) a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)}
-   SELECTION(2)
+   SELECTION(6)
      => Search Cond: default.a.r_name (TEXT) < default.b.r_name (TEXT)
-      JOIN(6)(CROSS)
+      JOIN(7)(CROSS)
         => target list: a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)
         => out schema: {(4) a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)}
         => in schema: {(4) a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)}
@@ -72,16 +72,16 @@ PROJECTION(3)
   => Targets: a_name (TEXT), b_name (TEXT)
   => out schema: {(2) a_name (TEXT), b_name (TEXT)}
   => in  schema: {(4) a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)}
-   SELECTION(2)
+   SELECTION(6)
      => Search Cond: default.a.r_name (TEXT) < default.b.r_name (TEXT)
-      JOIN(6)(CROSS)
+      JOIN(7)(CROSS)
         => target list: a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)
         => out schema: {(4) a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)}
         => in schema: {(4) a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)}
-         SCAN(9) on eb_0000000000000_0000_000002
+         SCAN(10) on eb_0000000000000_0000_000002
            => out schema: {(2) a_name (TEXT), default.a.r_name (TEXT)}
            => in schema: {(2) a_name (TEXT), default.a.r_name (TEXT)}
-         SCAN(8) on eb_0000000000000_0000_000001
+         SCAN(9) on eb_0000000000000_0000_000001
            => out schema: {(2) b_name (TEXT), default.b.r_name (TEXT)}
            => in schema: {(2) b_name (TEXT), default.b.r_name (TEXT)}
 

http://git-wip-us.apache.org/repos/asf/tajo/blob/bcec5eb7/tajo-core/src/test/resources/results/TestInnerJoinQuery/testCrossJoinWithThetaJoinConditionInWhere.Sort.plan
----------------------------------------------------------------------
diff --git a/tajo-core/src/test/resources/results/TestInnerJoinQuery/testCrossJoinWithThetaJoinConditionInWhere.Sort.plan b/tajo-core/src/test/resources/results/TestInnerJoinQuery/testCrossJoinWithThetaJoinConditionInWhere.Sort.plan
index 27de587..d161811 100644
--- a/tajo-core/src/test/resources/results/TestInnerJoinQuery/testCrossJoinWithThetaJoinConditionInWhere.Sort.plan
+++ b/tajo-core/src/test/resources/results/TestInnerJoinQuery/testCrossJoinWithThetaJoinConditionInWhere.Sort.plan
@@ -4,9 +4,9 @@ PROJECTION(3)
   => Targets: a_name (TEXT), b_name (TEXT)
   => out schema: {(2) a_name (TEXT), b_name (TEXT)}
   => in  schema: {(4) a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)}
-   SELECTION(2)
+   SELECTION(6)
      => Search Cond: default.a.r_name (TEXT) < default.b.r_name (TEXT)
-      JOIN(6)(CROSS)
+      JOIN(7)(CROSS)
         => target list: a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)
         => out schema: {(4) a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)}
         => in schema: {(4) a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)}
@@ -43,9 +43,9 @@ PROJECTION(3)
   => Targets: a_name (TEXT), b_name (TEXT)
   => out schema: {(2) a_name (TEXT), b_name (TEXT)}
   => in  schema: {(4) a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)}
-   SELECTION(2)
+   SELECTION(6)
      => Search Cond: default.a.r_name (TEXT) < default.b.r_name (TEXT)
-      JOIN(6)(CROSS)
+      JOIN(7)(CROSS)
         => target list: a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)
         => out schema: {(4) a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)}
         => in schema: {(4) a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)}

http://git-wip-us.apache.org/repos/asf/tajo/blob/bcec5eb7/tajo-core/src/test/resources/results/TestInnerJoinQuery/testCrossJoinWithThetaJoinConditionInWhere.Sort_NoBroadcast.plan
----------------------------------------------------------------------
diff --git a/tajo-core/src/test/resources/results/TestInnerJoinQuery/testCrossJoinWithThetaJoinConditionInWhere.Sort_NoBroadcast.plan b/tajo-core/src/test/resources/results/TestInnerJoinQuery/testCrossJoinWithThetaJoinConditionInWhere.Sort_NoBroadcast.plan
index 0048ac6..cfbfa19 100644
--- a/tajo-core/src/test/resources/results/TestInnerJoinQuery/testCrossJoinWithThetaJoinConditionInWhere.Sort_NoBroadcast.plan
+++ b/tajo-core/src/test/resources/results/TestInnerJoinQuery/testCrossJoinWithThetaJoinConditionInWhere.Sort_NoBroadcast.plan
@@ -4,9 +4,9 @@ PROJECTION(3)
   => Targets: a_name (TEXT), b_name (TEXT)
   => out schema: {(2) a_name (TEXT), b_name (TEXT)}
   => in  schema: {(4) a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)}
-   SELECTION(2)
+   SELECTION(6)
      => Search Cond: default.a.r_name (TEXT) < default.b.r_name (TEXT)
-      JOIN(6)(CROSS)
+      JOIN(7)(CROSS)
         => target list: a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)
         => out schema: {(4) a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)}
         => in schema: {(4) a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)}
@@ -72,16 +72,16 @@ PROJECTION(3)
   => Targets: a_name (TEXT), b_name (TEXT)
   => out schema: {(2) a_name (TEXT), b_name (TEXT)}
   => in  schema: {(4) a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)}
-   SELECTION(2)
+   SELECTION(6)
      => Search Cond: default.a.r_name (TEXT) < default.b.r_name (TEXT)
-      JOIN(6)(CROSS)
+      JOIN(7)(CROSS)
         => target list: a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)
         => out schema: {(4) a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)}
         => in schema: {(4) a_name (TEXT), b_name (TEXT), default.a.r_name (TEXT), default.b.r_name (TEXT)}
-         SCAN(9) on eb_0000000000000_0000_000002
+         SCAN(10) on eb_0000000000000_0000_000002
            => out schema: {(2) a_name (TEXT), default.a.r_name (TEXT)}
            => in schema: {(2) a_name (TEXT), default.a.r_name (TEXT)}
-         SCAN(8) on eb_0000000000000_0000_000001
+         SCAN(9) on eb_0000000000000_0000_000001
            => out schema: {(2) b_name (TEXT), default.b.r_name (TEXT)}
            => in schema: {(2) b_name (TEXT), default.b.r_name (TEXT)}
 

http://git-wip-us.apache.org/repos/asf/tajo/blob/bcec5eb7/tajo-core/src/test/resources/results/TestInnerJoinQuery/testInnerJoinWithThetaJoinConditionInWhere.Hash.plan
----------------------------------------------------------------------
diff --git a/tajo-core/src/test/resources/results/TestInnerJoinQuery/testInnerJoinWithThetaJoinConditionInWhere.Hash.plan b/tajo-core/src/test/resources/results/TestInnerJoinQuery/testInnerJoinWithThetaJoinConditionInWhere.Hash.plan
index 469668c..b2f4ff1 100644
--- a/tajo-core/src/test/resources/results/TestInnerJoinQuery/testInnerJoinWithThetaJoinConditionInWhere.Hash.plan
+++ b/tajo-core/src/test/resources/results/TestInnerJoinQuery/testInnerJoinWithThetaJoinConditionInWhere.Hash.plan
@@ -1,8 +1,8 @@
 explain
 -------------------------------
-SELECTION(3)
+SELECTION(6)
   => Search Cond: default.a.r_name (TEXT) <= default.b.r_name (TEXT)
-   JOIN(6)(INNER)
+   JOIN(7)(INNER)
      => Join Cond: default.a.r_regionkey (INT4) = default.b.r_regionkey (INT4)
      => target list: default.a.r_name (TEXT), default.a.r_regionkey (INT4), default.b.r_name (TEXT)
      => out schema: {(3) default.a.r_name (TEXT), default.a.r_regionkey (INT4), default.b.r_name (TEXT)}
@@ -36,9 +36,9 @@ Block Id: eb_0000000000000_0000_000003 [ROOT]
 [Enforcers]
  0: type=Broadcast, tables=default.a
 
-SELECTION(3)
+SELECTION(6)
   => Search Cond: default.a.r_name (TEXT) <= default.b.r_name (TEXT)
-   JOIN(6)(INNER)
+   JOIN(7)(INNER)
      => Join Cond: default.a.r_regionkey (INT4) = default.b.r_regionkey (INT4)
      => target list: default.a.r_name (TEXT), default.a.r_regionkey (INT4), default.b.r_name (TEXT)
      => out schema: {(3) default.a.r_name (TEXT), default.a.r_regionkey (INT4), default.b.r_name (TEXT)}

http://git-wip-us.apache.org/repos/asf/tajo/blob/bcec5eb7/tajo-core/src/test/resources/results/TestInnerJoinQuery/testInnerJoinWithThetaJoinConditionInWhere.Hash_NoBroadcast.plan
----------------------------------------------------------------------
diff --git a/tajo-core/src/test/resources/results/TestInnerJoinQuery/testInnerJoinWithThetaJoinConditionInWhere.Hash_NoBroadcast.plan b/tajo-core/src/test/resources/results/TestInnerJoinQuery/testInnerJoinWithThetaJoinConditionInWhere.Hash_NoBroadcast.plan
index 8e99f07..79d5e7a 100644
--- a/tajo-core/src/test/resources/results/TestInnerJoinQuery/testInnerJoinWithThetaJoinConditionInWhere.Hash_NoBroadcast.plan
+++ b/tajo-core/src/test/resources/results/TestInnerJoinQuery/testInnerJoinWithThetaJoinConditionInWhere.Hash_NoBroadcast.plan
@@ -1,8 +1,8 @@
 explain
 -------------------------------
-SELECTION(3)
+SELECTION(6)
   => Search Cond: default.a.r_name (TEXT) <= default.b.r_name (TEXT)
-   JOIN(6)(INNER)
+   JOIN(7)(INNER)
      => Join Cond: default.a.r_regionkey (INT4) = default.b.r_regionkey (INT4)
      => target list: default.a.r_name (TEXT), default.a.r_regionkey (INT4), default.b.r_name (TEXT)
      => out schema: {(3) default.a.r_name (TEXT), default.a.r_regionkey (INT4), default.b.r_name (TEXT)}
@@ -65,17 +65,17 @@ Block Id: eb_0000000000000_0000_000003 [ROOT]
 [q_0000000000000_0000] 1 => 3 (type=HASH_SHUFFLE, key=default.b.r_regionkey (INT4), num=32)
 [q_0000000000000_0000] 2 => 3 (type=HASH_SHUFFLE, key=default.a.r_regionkey (INT4), num=32)
 
-SELECTION(3)
+SELECTION(6)
   => Search Cond: default.a.r_name (TEXT) <= default.b.r_name (TEXT)
-   JOIN(6)(INNER)
+   JOIN(7)(INNER)
      => Join Cond: default.a.r_regionkey (INT4) = default.b.r_regionkey (INT4)
      => target list: default.a.r_name (TEXT), default.a.r_regionkey (INT4), default.b.r_name (TEXT)
      => out schema: {(3) default.a.r_name (TEXT), default.a.r_regionkey (INT4), default.b.r_name (TEXT)}
      => in schema: {(4) default.a.r_name (TEXT), default.a.r_regionkey (INT4), default.b.r_name (TEXT), default.b.r_regionkey (INT4)}
-      SCAN(9) on eb_0000000000000_0000_000002
+      SCAN(10) on eb_0000000000000_0000_000002
         => out schema: {(2) default.a.r_name (TEXT), default.a.r_regionkey (INT4)}
         => in schema: {(2) default.a.r_name (TEXT), default.a.r_regionkey (INT4)}
-      SCAN(8) on eb_0000000000000_0000_000001
+      SCAN(9) on eb_0000000000000_0000_000001
         => out schema: {(2) default.b.r_name (TEXT), default.b.r_regionkey (INT4)}
         => in schema: {(2) default.b.r_name (TEXT), default.b.r_regionkey (INT4)}
 

http://git-wip-us.apache.org/repos/asf/tajo/blob/bcec5eb7/tajo-core/src/test/resources/results/TestInnerJoinQuery/testInnerJoinWithThetaJoinConditionInWhere.Sort.plan
----------------------------------------------------------------------
diff --git a/tajo-core/src/test/resources/results/TestInnerJoinQuery/testInnerJoinWithThetaJoinConditionInWhere.Sort.plan b/tajo-core/src/test/resources/results/TestInnerJoinQuery/testInnerJoinWithThetaJoinConditionInWhere.Sort.plan
index 469668c..b2f4ff1 100644
--- a/tajo-core/src/test/resources/results/TestInnerJoinQuery/testInnerJoinWithThetaJoinConditionInWhere.Sort.plan
+++ b/tajo-core/src/test/resources/results/TestInnerJoinQuery/testInnerJoinWithThetaJoinConditionInWhere.Sort.plan
@@ -1,8 +1,8 @@
 explain
 -------------------------------
-SELECTION(3)
+SELECTION(6)
   => Search Cond: default.a.r_name (TEXT) <= default.b.r_name (TEXT)
-   JOIN(6)(INNER)
+   JOIN(7)(INNER)
      => Join Cond: default.a.r_regionkey (INT4) = default.b.r_regionkey (INT4)
      => target list: default.a.r_name (TEXT), default.a.r_regionkey (INT4), default.b.r_name (TEXT)
      => out schema: {(3) default.a.r_name (TEXT), default.a.r_regionkey (INT4), default.b.r_name (TEXT)}
@@ -36,9 +36,9 @@ Block Id: eb_0000000000000_0000_000003 [ROOT]
 [Enforcers]
  0: type=Broadcast, tables=default.a
 
-SELECTION(3)
+SELECTION(6)
   => Search Cond: default.a.r_name (TEXT) <= default.b.r_name (TEXT)
-   JOIN(6)(INNER)
+   JOIN(7)(INNER)
      => Join Cond: default.a.r_regionkey (INT4) = default.b.r_regionkey (INT4)
      => target list: default.a.r_name (TEXT), default.a.r_regionkey (INT4), default.b.r_name (TEXT)
      => out schema: {(3) default.a.r_name (TEXT), default.a.r_regionkey (INT4), default.b.r_name (TEXT)}

http://git-wip-us.apache.org/repos/asf/tajo/blob/bcec5eb7/tajo-core/src/test/resources/results/TestInnerJoinQuery/testInnerJoinWithThetaJoinConditionInWhere.Sort_NoBroadcast.plan
----------------------------------------------------------------------
diff --git a/tajo-core/src/test/resources/results/TestInnerJoinQuery/testInnerJoinWithThetaJoinConditionInWhere.Sort_NoBroadcast.plan b/tajo-core/src/test/resources/results/TestInnerJoinQuery/testInnerJoinWithThetaJoinConditionInWhere.Sort_NoBroadcast.plan
index 8e99f07..79d5e7a 100644
--- a/tajo-core/src/test/resources/results/TestInnerJoinQuery/testInnerJoinWithThetaJoinConditionInWhere.Sort_NoBroadcast.plan
+++ b/tajo-core/src/test/resources/results/TestInnerJoinQuery/testInnerJoinWithThetaJoinConditionInWhere.Sort_NoBroadcast.plan
@@ -1,8 +1,8 @@
 explain
 -------------------------------
-SELECTION(3)
+SELECTION(6)
   => Search Cond: default.a.r_name (TEXT) <= default.b.r_name (TEXT)
-   JOIN(6)(INNER)
+   JOIN(7)(INNER)
      => Join Cond: default.a.r_regionkey (INT4) = default.b.r_regionkey (INT4)
      => target list: default.a.r_name (TEXT), default.a.r_regionkey (INT4), default.b.r_name (TEXT)
      => out schema: {(3) default.a.r_name (TEXT), default.a.r_regionkey (INT4), default.b.r_name (TEXT)}
@@ -65,17 +65,17 @@ Block Id: eb_0000000000000_0000_000003 [ROOT]
 [q_0000000000000_0000] 1 => 3 (type=HASH_SHUFFLE, key=default.b.r_regionkey (INT4), num=32)
 [q_0000000000000_0000] 2 => 3 (type=HASH_SHUFFLE, key=default.a.r_regionkey (INT4), num=32)
 
-SELECTION(3)
+SELECTION(6)
   => Search Cond: default.a.r_name (TEXT) <= default.b.r_name (TEXT)
-   JOIN(6)(INNER)
+   JOIN(7)(INNER)
      => Join Cond: default.a.r_regionkey (INT4) = default.b.r_regionkey (INT4)
      => target list: default.a.r_name (TEXT), default.a.r_regionkey (INT4), default.b.r_name (TEXT)
      => out schema: {(3) default.a.r_name (TEXT), default.a.r_regionkey (INT4), default.b.r_name (TEXT)}
      => in schema: {(4) default.a.r_name (TEXT), default.a.r_regionkey (INT4), default.b.r_name (TEXT), default.b.r_regionkey (INT4)}
-      SCAN(9) on eb_0000000000000_0000_000002
+      SCAN(10) on eb_0000000000000_0000_000002
         => out schema: {(2) default.a.r_name (TEXT), default.a.r_regionkey (INT4)}
         => in schema: {(2) default.a.r_name (TEXT), default.a.r_regionkey (INT4)}
-      SCAN(8) on eb_0000000000000_0000_000001
+      SCAN(9) on eb_0000000000000_0000_000001
         => out schema: {(2) default.b.r_name (TEXT), default.b.r_regionkey (INT4)}
         => in schema: {(2) default.b.r_name (TEXT), default.b.r_regionkey (INT4)}
 

http://git-wip-us.apache.org/repos/asf/tajo/blob/bcec5eb7/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testBroadcastSubquery2.Hash.plan
----------------------------------------------------------------------
diff --git a/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testBroadcastSubquery2.Hash.plan b/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testBroadcastSubquery2.Hash.plan
index ec3578c..5def40e 100644
--- a/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testBroadcastSubquery2.Hash.plan
+++ b/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testBroadcastSubquery2.Hash.plan
@@ -5,9 +5,9 @@ GROUP_BY(18)()
   => target list: ?sum (FLOAT8)
   => out schema:{(1) ?sum (FLOAT8)}
   => in schema:{(2) default.b.l_quantity (FLOAT8), default.f.avg_quantity (FLOAT8)}
-   SELECTION(16)
+   SELECTION(20)
      => Search Cond: default.b.l_quantity (FLOAT8) > default.f.avg_quantity (FLOAT8)
-      JOIN(23)(INNER)
+      JOIN(24)(INNER)
         => Join Cond: default.c.o_orderkey (INT4) = default.f.l_orderkey (INT4)
         => target list: default.b.l_quantity (FLOAT8), default.f.avg_quantity (FLOAT8)
         => out schema: {(2) default.b.l_quantity (FLOAT8), default.f.avg_quantity (FLOAT8)}
@@ -25,7 +25,7 @@ GROUP_BY(18)()
                  => Targets: default.e.l_orderkey (INT4), default.e.l_quantity (FLOAT8)
                  => out schema: {(2) default.e.l_orderkey (INT4), default.e.l_quantity (FLOAT8)}
                  => in  schema: {(2) default.e.l_orderkey (INT4), default.e.l_quantity (FLOAT8)}
-                  JOIN(21)(INNER)
+                  JOIN(22)(INNER)
                     => Join Cond: default.d.l_partkey (INT4) = default.part.p_partkey (INT4)
                     => target list: default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)
                     => out schema: {(2) default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)}
@@ -38,7 +38,7 @@ GROUP_BY(18)()
                        => target list: default.d.l_orderkey (INT4), default.d.l_partkey (INT4), default.d.l_quantity (FLOAT8)
                        => out schema: {(3) default.d.l_orderkey (INT4), default.d.l_partkey (INT4), default.d.l_quantity (FLOAT8)}
                        => in schema: {(16) default.d.l_comment (TEXT), default.d.l_commitdate (TEXT), default.d.l_discount (FLOAT8), default.d.l_extendedprice (FLOAT8), default.d.l_linenumber (INT4), default.d.l_linestatus (TEXT), default.d.l_orderkey (INT4), default.d.l_partkey (INT4), default.d.l_quantity (FLOAT8), default.d.l_receiptdate (TEXT), default.d.l_returnflag (TEXT), default.d.l_shipdate (TEXT), default.d.l_shipinstruct (TEXT), default.d.l_shipmode (TEXT), default.d.l_suppkey (INT4), default.d.l_tax (FLOAT8)}
-         JOIN(22)(INNER)
+         JOIN(23)(INNER)
            => Join Cond: default.c.o_orderkey (INT4) = default.b.l_orderkey (INT4)
            => target list: default.b.l_quantity (FLOAT8), default.c.o_orderkey (INT4)
            => out schema: {(2) default.b.l_quantity (FLOAT8), default.c.o_orderkey (INT4)}
@@ -52,7 +52,7 @@ GROUP_BY(18)()
               => Targets: default.b.l_quantity (FLOAT8), default.b.l_orderkey (INT4)
               => out schema: {(2) default.b.l_orderkey (INT4), default.b.l_quantity (FLOAT8)}
               => in  schema: {(3) default.b.l_linenumber (INT4), default.b.l_orderkey (INT4), default.b.l_quantity (FLOAT8)}
-               JOIN(20)(INNER)
+               JOIN(21)(INNER)
                  => Join Cond: default.a.l_partkey (INT4) = default.part.p_partkey (INT4)
                  => target list: default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8)
                  => out schema: {(3) default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8)}
@@ -93,7 +93,7 @@ Block Id: eb_0000000000000_0000_000008 [LEAF]
 [Enforcers]
  0: type=Broadcast, tables=default.part
 
-GROUP_BY(31)(l_orderkey)
+GROUP_BY(32)(l_orderkey)
   => exprs: (avg(default.e.l_quantity (FLOAT8)))
   => target list: default.e.l_orderkey (INT4), ?avg_11 (PROTOBUF)
   => out schema:{(2) default.e.l_orderkey (INT4), ?avg_11 (PROTOBUF)}
@@ -106,7 +106,7 @@ GROUP_BY(31)(l_orderkey)
         => Targets: default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)
         => out schema: {(2) default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)}
         => in  schema: {(2) default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)}
-         JOIN(21)(INNER)
+         JOIN(22)(INNER)
            => Join Cond: default.d.l_partkey (INT4) = default.part.p_partkey (INT4)
            => target list: default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)
            => out schema: {(2) default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)}
@@ -135,14 +135,14 @@ Block Id: eb_0000000000000_0000_000010 [INTERMEDIATE]
  1: type=Broadcast, tables=default.a
  2: type=Broadcast, tables=default.c
 
-GROUP_BY(35)()
+GROUP_BY(36)()
   => exprs: (sum(default.b.l_quantity (FLOAT8)))
   => target list: ?sum_12 (FLOAT8)
   => out schema:{(1) ?sum_12 (FLOAT8)}
   => in schema:{(2) default.b.l_quantity (FLOAT8), default.f.avg_quantity (FLOAT8)}
-   SELECTION(16)
+   SELECTION(20)
      => Search Cond: default.b.l_quantity (FLOAT8) > default.f.avg_quantity (FLOAT8)
-      JOIN(23)(INNER)
+      JOIN(24)(INNER)
         => Join Cond: default.c.o_orderkey (INT4) = default.f.l_orderkey (INT4)
         => target list: default.b.l_quantity (FLOAT8), default.f.avg_quantity (FLOAT8)
         => out schema: {(2) default.b.l_quantity (FLOAT8), default.f.avg_quantity (FLOAT8)}
@@ -160,10 +160,10 @@ GROUP_BY(35)()
                  => target list: default.e.l_orderkey (INT4), avg_quantity (FLOAT8)
                  => out schema:{(2) avg_quantity (FLOAT8), default.e.l_orderkey (INT4)}
                  => in schema:{(2) default.e.l_orderkey (INT4), ?avg_11 (PROTOBUF)}
-                  SCAN(32) on eb_0000000000000_0000_000008
+                  SCAN(33) on eb_0000000000000_0000_000008
                     => out schema: {(2) default.e.l_orderkey (INT4), ?avg_11 (PROTOBUF)}
                     => in schema: {(2) default.e.l_orderkey (INT4), ?avg_11 (PROTOBUF)}
-         JOIN(22)(INNER)
+         JOIN(23)(INNER)
            => Join Cond: default.c.o_orderkey (INT4) = default.b.l_orderkey (INT4)
            => target list: default.b.l_quantity (FLOAT8), default.c.o_orderkey (INT4)
            => out schema: {(2) default.b.l_quantity (FLOAT8), default.c.o_orderkey (INT4)}
@@ -181,7 +181,7 @@ GROUP_BY(35)()
                  => Targets: default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8), default.a.l_linenumber (INT4)
                  => out schema: {(3) default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8)}
                  => in  schema: {(3) default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8)}
-                  JOIN(20)(INNER)
+                  JOIN(21)(INNER)
                     => Join Cond: default.a.l_partkey (INT4) = default.part.p_partkey (INT4)
                     => target list: default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8)
                     => out schema: {(3) default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8)}
@@ -207,7 +207,7 @@ GROUP_BY(18)()
   => target list: ?sum (FLOAT8)
   => out schema:{(1) ?sum (FLOAT8)}
   => in schema:{(1) ?sum_12 (FLOAT8)}
-   SCAN(36) on eb_0000000000000_0000_000010
+   SCAN(37) on eb_0000000000000_0000_000010
      => out schema: {(1) ?sum_12 (FLOAT8)}
      => in schema: {(1) ?sum_12 (FLOAT8)}
 

http://git-wip-us.apache.org/repos/asf/tajo/blob/bcec5eb7/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testBroadcastSubquery2.Hash_NoBroadcast.plan
----------------------------------------------------------------------
diff --git a/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testBroadcastSubquery2.Hash_NoBroadcast.plan b/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testBroadcastSubquery2.Hash_NoBroadcast.plan
index 14f4bb4..cbd07fc 100644
--- a/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testBroadcastSubquery2.Hash_NoBroadcast.plan
+++ b/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testBroadcastSubquery2.Hash_NoBroadcast.plan
@@ -5,9 +5,9 @@ GROUP_BY(18)()
   => target list: ?sum (FLOAT8)
   => out schema:{(1) ?sum (FLOAT8)}
   => in schema:{(2) default.b.l_quantity (FLOAT8), default.f.avg_quantity (FLOAT8)}
-   SELECTION(16)
+   SELECTION(20)
      => Search Cond: default.b.l_quantity (FLOAT8) > default.f.avg_quantity (FLOAT8)
-      JOIN(23)(INNER)
+      JOIN(24)(INNER)
         => Join Cond: default.c.o_orderkey (INT4) = default.f.l_orderkey (INT4)
         => target list: default.b.l_quantity (FLOAT8), default.f.avg_quantity (FLOAT8)
         => out schema: {(2) default.b.l_quantity (FLOAT8), default.f.avg_quantity (FLOAT8)}
@@ -25,7 +25,7 @@ GROUP_BY(18)()
                  => Targets: default.e.l_orderkey (INT4), default.e.l_quantity (FLOAT8)
                  => out schema: {(2) default.e.l_orderkey (INT4), default.e.l_quantity (FLOAT8)}
                  => in  schema: {(2) default.e.l_orderkey (INT4), default.e.l_quantity (FLOAT8)}
-                  JOIN(21)(INNER)
+                  JOIN(22)(INNER)
                     => Join Cond: default.d.l_partkey (INT4) = default.part.p_partkey (INT4)
                     => target list: default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)
                     => out schema: {(2) default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)}
@@ -38,7 +38,7 @@ GROUP_BY(18)()
                        => target list: default.d.l_orderkey (INT4), default.d.l_partkey (INT4), default.d.l_quantity (FLOAT8)
                        => out schema: {(3) default.d.l_orderkey (INT4), default.d.l_partkey (INT4), default.d.l_quantity (FLOAT8)}
                        => in schema: {(16) default.d.l_comment (TEXT), default.d.l_commitdate (TEXT), default.d.l_discount (FLOAT8), default.d.l_extendedprice (FLOAT8), default.d.l_linenumber (INT4), default.d.l_linestatus (TEXT), default.d.l_orderkey (INT4), default.d.l_partkey (INT4), default.d.l_quantity (FLOAT8), default.d.l_receiptdate (TEXT), default.d.l_returnflag (TEXT), default.d.l_shipdate (TEXT), default.d.l_shipinstruct (TEXT), default.d.l_shipmode (TEXT), default.d.l_suppkey (INT4), default.d.l_tax (FLOAT8)}
-         JOIN(22)(INNER)
+         JOIN(23)(INNER)
            => Join Cond: default.c.o_orderkey (INT4) = default.b.l_orderkey (INT4)
            => target list: default.b.l_quantity (FLOAT8), default.c.o_orderkey (INT4)
            => out schema: {(2) default.b.l_quantity (FLOAT8), default.c.o_orderkey (INT4)}
@@ -52,7 +52,7 @@ GROUP_BY(18)()
               => Targets: default.b.l_quantity (FLOAT8), default.b.l_orderkey (INT4)
               => out schema: {(2) default.b.l_orderkey (INT4), default.b.l_quantity (FLOAT8)}
               => in  schema: {(3) default.b.l_linenumber (INT4), default.b.l_orderkey (INT4), default.b.l_quantity (FLOAT8)}
-               JOIN(20)(INNER)
+               JOIN(21)(INNER)
                  => Join Cond: default.a.l_partkey (INT4) = default.part.p_partkey (INT4)
                  => target list: default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8)
                  => out schema: {(3) default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8)}
@@ -142,15 +142,15 @@ TABLE_SUBQUERY(4) as default.b
      => Targets: default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8), default.a.l_linenumber (INT4)
      => out schema: {(3) default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8)}
      => in  schema: {(3) default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8)}
-      JOIN(20)(INNER)
+      JOIN(21)(INNER)
         => Join Cond: default.a.l_partkey (INT4) = default.part.p_partkey (INT4)
         => target list: default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8)
         => out schema: {(3) default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8)}
         => in schema: {(5) default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_partkey (INT4), default.a.l_quantity (FLOAT8), default.part.p_partkey (INT4)}
-         SCAN(26) on eb_0000000000000_0000_000002
+         SCAN(27) on eb_0000000000000_0000_000002
            => out schema: {(1) default.part.p_partkey (INT4)}
            => in schema: {(1) default.part.p_partkey (INT4)}
-         SCAN(25) on eb_0000000000000_0000_000001
+         SCAN(26) on eb_0000000000000_0000_000001
            => out schema: {(4) default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_partkey (INT4), default.a.l_quantity (FLOAT8)}
            => in schema: {(4) default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_partkey (INT4), default.a.l_quantity (FLOAT8)}
 
@@ -202,15 +202,15 @@ Block Id: eb_0000000000000_0000_000005 [INTERMEDIATE]
 [Outgoing]
 [q_0000000000000_0000] 5 => 10 (type=HASH_SHUFFLE, key=default.c.o_orderkey (INT4), num=32)
 
-JOIN(22)(INNER)
+JOIN(23)(INNER)
   => Join Cond: default.c.o_orderkey (INT4) = default.b.l_orderkey (INT4)
   => target list: default.b.l_quantity (FLOAT8), default.c.o_orderkey (INT4)
   => out schema: {(2) default.b.l_quantity (FLOAT8), default.c.o_orderkey (INT4)}
   => in schema: {(3) default.b.l_orderkey (INT4), default.b.l_quantity (FLOAT8), default.c.o_orderkey (INT4)}
-   SCAN(28) on eb_0000000000000_0000_000004
+   SCAN(29) on eb_0000000000000_0000_000004
      => out schema: {(1) default.c.o_orderkey (INT4)}
      => in schema: {(1) default.c.o_orderkey (INT4)}
-   SCAN(27) on eb_0000000000000_0000_000003
+   SCAN(28) on eb_0000000000000_0000_000003
      => out schema: {(2) default.b.l_quantity (FLOAT8), default.b.l_orderkey (INT4)}
      => in schema: {(2) default.b.l_quantity (FLOAT8), default.b.l_orderkey (INT4)}
 
@@ -225,7 +225,7 @@ Block Id: eb_0000000000000_0000_000008 [INTERMEDIATE]
 [Outgoing]
 [q_0000000000000_0000] 8 => 9 (type=HASH_SHUFFLE, key=default.e.l_orderkey (INT4), num=32)
 
-GROUP_BY(31)(l_orderkey)
+GROUP_BY(32)(l_orderkey)
   => exprs: (avg(default.e.l_quantity (FLOAT8)))
   => target list: default.e.l_orderkey (INT4), ?avg_11 (PROTOBUF)
   => out schema:{(2) default.e.l_orderkey (INT4), ?avg_11 (PROTOBUF)}
@@ -238,15 +238,15 @@ GROUP_BY(31)(l_orderkey)
         => Targets: default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)
         => out schema: {(2) default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)}
         => in  schema: {(2) default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)}
-         JOIN(21)(INNER)
+         JOIN(22)(INNER)
            => Join Cond: default.d.l_partkey (INT4) = default.part.p_partkey (INT4)
            => target list: default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)
            => out schema: {(2) default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)}
            => in schema: {(4) default.d.l_orderkey (INT4), default.d.l_partkey (INT4), default.d.l_quantity (FLOAT8), default.part.p_partkey (INT4)}
-            SCAN(30) on eb_0000000000000_0000_000007
+            SCAN(31) on eb_0000000000000_0000_000007
               => out schema: {(1) default.part.p_partkey (INT4)}
               => in schema: {(1) default.part.p_partkey (INT4)}
-            SCAN(29) on eb_0000000000000_0000_000006
+            SCAN(30) on eb_0000000000000_0000_000006
               => out schema: {(3) default.d.l_orderkey (INT4), default.d.l_partkey (INT4), default.d.l_quantity (FLOAT8)}
               => in schema: {(3) default.d.l_orderkey (INT4), default.d.l_partkey (INT4), default.d.l_quantity (FLOAT8)}
 
@@ -273,7 +273,7 @@ TABLE_SUBQUERY(14) as default.f
         => target list: default.e.l_orderkey (INT4), avg_quantity (FLOAT8)
         => out schema:{(2) avg_quantity (FLOAT8), default.e.l_orderkey (INT4)}
         => in schema:{(2) default.e.l_orderkey (INT4), ?avg_11 (PROTOBUF)}
-         SCAN(32) on eb_0000000000000_0000_000008
+         SCAN(33) on eb_0000000000000_0000_000008
            => out schema: {(2) default.e.l_orderkey (INT4), ?avg_11 (PROTOBUF)}
            => in schema: {(2) default.e.l_orderkey (INT4), ?avg_11 (PROTOBUF)}
 
@@ -288,22 +288,22 @@ Block Id: eb_0000000000000_0000_000010 [INTERMEDIATE]
 [Outgoing]
 [q_0000000000000_0000] 10 => 11 (type=HASH_SHUFFLE, key=, num=1)
 
-GROUP_BY(35)()
+GROUP_BY(36)()
   => exprs: (sum(default.b.l_quantity (FLOAT8)))
   => target list: ?sum_12 (FLOAT8)
   => out schema:{(1) ?sum_12 (FLOAT8)}
   => in schema:{(2) default.b.l_quantity (FLOAT8), default.f.avg_quantity (FLOAT8)}
-   SELECTION(16)
+   SELECTION(20)
      => Search Cond: default.b.l_quantity (FLOAT8) > default.f.avg_quantity (FLOAT8)
-      JOIN(23)(INNER)
+      JOIN(24)(INNER)
         => Join Cond: default.c.o_orderkey (INT4) = default.f.l_orderkey (INT4)
         => target list: default.b.l_quantity (FLOAT8), default.f.avg_quantity (FLOAT8)
         => out schema: {(2) default.b.l_quantity (FLOAT8), default.f.avg_quantity (FLOAT8)}
         => in schema: {(4) default.b.l_quantity (FLOAT8), default.c.o_orderkey (INT4), default.f.avg_quantity (FLOAT8), default.f.l_orderkey (INT4)}
-         SCAN(34) on eb_0000000000000_0000_000009
+         SCAN(35) on eb_0000000000000_0000_000009
            => out schema: {(2) default.f.avg_quantity (FLOAT8), default.f.l_orderkey (INT4)}
            => in schema: {(2) default.f.avg_quantity (FLOAT8), default.f.l_orderkey (INT4)}
-         SCAN(33) on eb_0000000000000_0000_000005
+         SCAN(34) on eb_0000000000000_0000_000005
            => out schema: {(2) default.b.l_quantity (FLOAT8), default.c.o_orderkey (INT4)}
            => in schema: {(2) default.b.l_quantity (FLOAT8), default.c.o_orderkey (INT4)}
 
@@ -319,7 +319,7 @@ GROUP_BY(18)()
   => target list: ?sum (FLOAT8)
   => out schema:{(1) ?sum (FLOAT8)}
   => in schema:{(1) ?sum_12 (FLOAT8)}
-   SCAN(36) on eb_0000000000000_0000_000010
+   SCAN(37) on eb_0000000000000_0000_000010
      => out schema: {(1) ?sum_12 (FLOAT8)}
      => in schema: {(1) ?sum_12 (FLOAT8)}
 

http://git-wip-us.apache.org/repos/asf/tajo/blob/bcec5eb7/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testBroadcastSubquery2.Sort.plan
----------------------------------------------------------------------
diff --git a/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testBroadcastSubquery2.Sort.plan b/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testBroadcastSubquery2.Sort.plan
index ec3578c..5def40e 100644
--- a/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testBroadcastSubquery2.Sort.plan
+++ b/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testBroadcastSubquery2.Sort.plan
@@ -5,9 +5,9 @@ GROUP_BY(18)()
   => target list: ?sum (FLOAT8)
   => out schema:{(1) ?sum (FLOAT8)}
   => in schema:{(2) default.b.l_quantity (FLOAT8), default.f.avg_quantity (FLOAT8)}
-   SELECTION(16)
+   SELECTION(20)
      => Search Cond: default.b.l_quantity (FLOAT8) > default.f.avg_quantity (FLOAT8)
-      JOIN(23)(INNER)
+      JOIN(24)(INNER)
         => Join Cond: default.c.o_orderkey (INT4) = default.f.l_orderkey (INT4)
         => target list: default.b.l_quantity (FLOAT8), default.f.avg_quantity (FLOAT8)
         => out schema: {(2) default.b.l_quantity (FLOAT8), default.f.avg_quantity (FLOAT8)}
@@ -25,7 +25,7 @@ GROUP_BY(18)()
                  => Targets: default.e.l_orderkey (INT4), default.e.l_quantity (FLOAT8)
                  => out schema: {(2) default.e.l_orderkey (INT4), default.e.l_quantity (FLOAT8)}
                  => in  schema: {(2) default.e.l_orderkey (INT4), default.e.l_quantity (FLOAT8)}
-                  JOIN(21)(INNER)
+                  JOIN(22)(INNER)
                     => Join Cond: default.d.l_partkey (INT4) = default.part.p_partkey (INT4)
                     => target list: default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)
                     => out schema: {(2) default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)}
@@ -38,7 +38,7 @@ GROUP_BY(18)()
                        => target list: default.d.l_orderkey (INT4), default.d.l_partkey (INT4), default.d.l_quantity (FLOAT8)
                        => out schema: {(3) default.d.l_orderkey (INT4), default.d.l_partkey (INT4), default.d.l_quantity (FLOAT8)}
                        => in schema: {(16) default.d.l_comment (TEXT), default.d.l_commitdate (TEXT), default.d.l_discount (FLOAT8), default.d.l_extendedprice (FLOAT8), default.d.l_linenumber (INT4), default.d.l_linestatus (TEXT), default.d.l_orderkey (INT4), default.d.l_partkey (INT4), default.d.l_quantity (FLOAT8), default.d.l_receiptdate (TEXT), default.d.l_returnflag (TEXT), default.d.l_shipdate (TEXT), default.d.l_shipinstruct (TEXT), default.d.l_shipmode (TEXT), default.d.l_suppkey (INT4), default.d.l_tax (FLOAT8)}
-         JOIN(22)(INNER)
+         JOIN(23)(INNER)
            => Join Cond: default.c.o_orderkey (INT4) = default.b.l_orderkey (INT4)
            => target list: default.b.l_quantity (FLOAT8), default.c.o_orderkey (INT4)
            => out schema: {(2) default.b.l_quantity (FLOAT8), default.c.o_orderkey (INT4)}
@@ -52,7 +52,7 @@ GROUP_BY(18)()
               => Targets: default.b.l_quantity (FLOAT8), default.b.l_orderkey (INT4)
               => out schema: {(2) default.b.l_orderkey (INT4), default.b.l_quantity (FLOAT8)}
               => in  schema: {(3) default.b.l_linenumber (INT4), default.b.l_orderkey (INT4), default.b.l_quantity (FLOAT8)}
-               JOIN(20)(INNER)
+               JOIN(21)(INNER)
                  => Join Cond: default.a.l_partkey (INT4) = default.part.p_partkey (INT4)
                  => target list: default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8)
                  => out schema: {(3) default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8)}
@@ -93,7 +93,7 @@ Block Id: eb_0000000000000_0000_000008 [LEAF]
 [Enforcers]
  0: type=Broadcast, tables=default.part
 
-GROUP_BY(31)(l_orderkey)
+GROUP_BY(32)(l_orderkey)
   => exprs: (avg(default.e.l_quantity (FLOAT8)))
   => target list: default.e.l_orderkey (INT4), ?avg_11 (PROTOBUF)
   => out schema:{(2) default.e.l_orderkey (INT4), ?avg_11 (PROTOBUF)}
@@ -106,7 +106,7 @@ GROUP_BY(31)(l_orderkey)
         => Targets: default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)
         => out schema: {(2) default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)}
         => in  schema: {(2) default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)}
-         JOIN(21)(INNER)
+         JOIN(22)(INNER)
            => Join Cond: default.d.l_partkey (INT4) = default.part.p_partkey (INT4)
            => target list: default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)
            => out schema: {(2) default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)}
@@ -135,14 +135,14 @@ Block Id: eb_0000000000000_0000_000010 [INTERMEDIATE]
  1: type=Broadcast, tables=default.a
  2: type=Broadcast, tables=default.c
 
-GROUP_BY(35)()
+GROUP_BY(36)()
   => exprs: (sum(default.b.l_quantity (FLOAT8)))
   => target list: ?sum_12 (FLOAT8)
   => out schema:{(1) ?sum_12 (FLOAT8)}
   => in schema:{(2) default.b.l_quantity (FLOAT8), default.f.avg_quantity (FLOAT8)}
-   SELECTION(16)
+   SELECTION(20)
      => Search Cond: default.b.l_quantity (FLOAT8) > default.f.avg_quantity (FLOAT8)
-      JOIN(23)(INNER)
+      JOIN(24)(INNER)
         => Join Cond: default.c.o_orderkey (INT4) = default.f.l_orderkey (INT4)
         => target list: default.b.l_quantity (FLOAT8), default.f.avg_quantity (FLOAT8)
         => out schema: {(2) default.b.l_quantity (FLOAT8), default.f.avg_quantity (FLOAT8)}
@@ -160,10 +160,10 @@ GROUP_BY(35)()
                  => target list: default.e.l_orderkey (INT4), avg_quantity (FLOAT8)
                  => out schema:{(2) avg_quantity (FLOAT8), default.e.l_orderkey (INT4)}
                  => in schema:{(2) default.e.l_orderkey (INT4), ?avg_11 (PROTOBUF)}
-                  SCAN(32) on eb_0000000000000_0000_000008
+                  SCAN(33) on eb_0000000000000_0000_000008
                     => out schema: {(2) default.e.l_orderkey (INT4), ?avg_11 (PROTOBUF)}
                     => in schema: {(2) default.e.l_orderkey (INT4), ?avg_11 (PROTOBUF)}
-         JOIN(22)(INNER)
+         JOIN(23)(INNER)
            => Join Cond: default.c.o_orderkey (INT4) = default.b.l_orderkey (INT4)
            => target list: default.b.l_quantity (FLOAT8), default.c.o_orderkey (INT4)
            => out schema: {(2) default.b.l_quantity (FLOAT8), default.c.o_orderkey (INT4)}
@@ -181,7 +181,7 @@ GROUP_BY(35)()
                  => Targets: default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8), default.a.l_linenumber (INT4)
                  => out schema: {(3) default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8)}
                  => in  schema: {(3) default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8)}
-                  JOIN(20)(INNER)
+                  JOIN(21)(INNER)
                     => Join Cond: default.a.l_partkey (INT4) = default.part.p_partkey (INT4)
                     => target list: default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8)
                     => out schema: {(3) default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8)}
@@ -207,7 +207,7 @@ GROUP_BY(18)()
   => target list: ?sum (FLOAT8)
   => out schema:{(1) ?sum (FLOAT8)}
   => in schema:{(1) ?sum_12 (FLOAT8)}
-   SCAN(36) on eb_0000000000000_0000_000010
+   SCAN(37) on eb_0000000000000_0000_000010
      => out schema: {(1) ?sum_12 (FLOAT8)}
      => in schema: {(1) ?sum_12 (FLOAT8)}
 

http://git-wip-us.apache.org/repos/asf/tajo/blob/bcec5eb7/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testBroadcastSubquery2.Sort_NoBroadcast.plan
----------------------------------------------------------------------
diff --git a/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testBroadcastSubquery2.Sort_NoBroadcast.plan b/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testBroadcastSubquery2.Sort_NoBroadcast.plan
index 14f4bb4..cbd07fc 100644
--- a/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testBroadcastSubquery2.Sort_NoBroadcast.plan
+++ b/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testBroadcastSubquery2.Sort_NoBroadcast.plan
@@ -5,9 +5,9 @@ GROUP_BY(18)()
   => target list: ?sum (FLOAT8)
   => out schema:{(1) ?sum (FLOAT8)}
   => in schema:{(2) default.b.l_quantity (FLOAT8), default.f.avg_quantity (FLOAT8)}
-   SELECTION(16)
+   SELECTION(20)
      => Search Cond: default.b.l_quantity (FLOAT8) > default.f.avg_quantity (FLOAT8)
-      JOIN(23)(INNER)
+      JOIN(24)(INNER)
         => Join Cond: default.c.o_orderkey (INT4) = default.f.l_orderkey (INT4)
         => target list: default.b.l_quantity (FLOAT8), default.f.avg_quantity (FLOAT8)
         => out schema: {(2) default.b.l_quantity (FLOAT8), default.f.avg_quantity (FLOAT8)}
@@ -25,7 +25,7 @@ GROUP_BY(18)()
                  => Targets: default.e.l_orderkey (INT4), default.e.l_quantity (FLOAT8)
                  => out schema: {(2) default.e.l_orderkey (INT4), default.e.l_quantity (FLOAT8)}
                  => in  schema: {(2) default.e.l_orderkey (INT4), default.e.l_quantity (FLOAT8)}
-                  JOIN(21)(INNER)
+                  JOIN(22)(INNER)
                     => Join Cond: default.d.l_partkey (INT4) = default.part.p_partkey (INT4)
                     => target list: default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)
                     => out schema: {(2) default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)}
@@ -38,7 +38,7 @@ GROUP_BY(18)()
                        => target list: default.d.l_orderkey (INT4), default.d.l_partkey (INT4), default.d.l_quantity (FLOAT8)
                        => out schema: {(3) default.d.l_orderkey (INT4), default.d.l_partkey (INT4), default.d.l_quantity (FLOAT8)}
                        => in schema: {(16) default.d.l_comment (TEXT), default.d.l_commitdate (TEXT), default.d.l_discount (FLOAT8), default.d.l_extendedprice (FLOAT8), default.d.l_linenumber (INT4), default.d.l_linestatus (TEXT), default.d.l_orderkey (INT4), default.d.l_partkey (INT4), default.d.l_quantity (FLOAT8), default.d.l_receiptdate (TEXT), default.d.l_returnflag (TEXT), default.d.l_shipdate (TEXT), default.d.l_shipinstruct (TEXT), default.d.l_shipmode (TEXT), default.d.l_suppkey (INT4), default.d.l_tax (FLOAT8)}
-         JOIN(22)(INNER)
+         JOIN(23)(INNER)
            => Join Cond: default.c.o_orderkey (INT4) = default.b.l_orderkey (INT4)
            => target list: default.b.l_quantity (FLOAT8), default.c.o_orderkey (INT4)
            => out schema: {(2) default.b.l_quantity (FLOAT8), default.c.o_orderkey (INT4)}
@@ -52,7 +52,7 @@ GROUP_BY(18)()
               => Targets: default.b.l_quantity (FLOAT8), default.b.l_orderkey (INT4)
               => out schema: {(2) default.b.l_orderkey (INT4), default.b.l_quantity (FLOAT8)}
               => in  schema: {(3) default.b.l_linenumber (INT4), default.b.l_orderkey (INT4), default.b.l_quantity (FLOAT8)}
-               JOIN(20)(INNER)
+               JOIN(21)(INNER)
                  => Join Cond: default.a.l_partkey (INT4) = default.part.p_partkey (INT4)
                  => target list: default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8)
                  => out schema: {(3) default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8)}
@@ -142,15 +142,15 @@ TABLE_SUBQUERY(4) as default.b
      => Targets: default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8), default.a.l_linenumber (INT4)
      => out schema: {(3) default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8)}
      => in  schema: {(3) default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8)}
-      JOIN(20)(INNER)
+      JOIN(21)(INNER)
         => Join Cond: default.a.l_partkey (INT4) = default.part.p_partkey (INT4)
         => target list: default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8)
         => out schema: {(3) default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_quantity (FLOAT8)}
         => in schema: {(5) default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_partkey (INT4), default.a.l_quantity (FLOAT8), default.part.p_partkey (INT4)}
-         SCAN(26) on eb_0000000000000_0000_000002
+         SCAN(27) on eb_0000000000000_0000_000002
            => out schema: {(1) default.part.p_partkey (INT4)}
            => in schema: {(1) default.part.p_partkey (INT4)}
-         SCAN(25) on eb_0000000000000_0000_000001
+         SCAN(26) on eb_0000000000000_0000_000001
            => out schema: {(4) default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_partkey (INT4), default.a.l_quantity (FLOAT8)}
            => in schema: {(4) default.a.l_linenumber (INT4), default.a.l_orderkey (INT4), default.a.l_partkey (INT4), default.a.l_quantity (FLOAT8)}
 
@@ -202,15 +202,15 @@ Block Id: eb_0000000000000_0000_000005 [INTERMEDIATE]
 [Outgoing]
 [q_0000000000000_0000] 5 => 10 (type=HASH_SHUFFLE, key=default.c.o_orderkey (INT4), num=32)
 
-JOIN(22)(INNER)
+JOIN(23)(INNER)
   => Join Cond: default.c.o_orderkey (INT4) = default.b.l_orderkey (INT4)
   => target list: default.b.l_quantity (FLOAT8), default.c.o_orderkey (INT4)
   => out schema: {(2) default.b.l_quantity (FLOAT8), default.c.o_orderkey (INT4)}
   => in schema: {(3) default.b.l_orderkey (INT4), default.b.l_quantity (FLOAT8), default.c.o_orderkey (INT4)}
-   SCAN(28) on eb_0000000000000_0000_000004
+   SCAN(29) on eb_0000000000000_0000_000004
      => out schema: {(1) default.c.o_orderkey (INT4)}
      => in schema: {(1) default.c.o_orderkey (INT4)}
-   SCAN(27) on eb_0000000000000_0000_000003
+   SCAN(28) on eb_0000000000000_0000_000003
      => out schema: {(2) default.b.l_quantity (FLOAT8), default.b.l_orderkey (INT4)}
      => in schema: {(2) default.b.l_quantity (FLOAT8), default.b.l_orderkey (INT4)}
 
@@ -225,7 +225,7 @@ Block Id: eb_0000000000000_0000_000008 [INTERMEDIATE]
 [Outgoing]
 [q_0000000000000_0000] 8 => 9 (type=HASH_SHUFFLE, key=default.e.l_orderkey (INT4), num=32)
 
-GROUP_BY(31)(l_orderkey)
+GROUP_BY(32)(l_orderkey)
   => exprs: (avg(default.e.l_quantity (FLOAT8)))
   => target list: default.e.l_orderkey (INT4), ?avg_11 (PROTOBUF)
   => out schema:{(2) default.e.l_orderkey (INT4), ?avg_11 (PROTOBUF)}
@@ -238,15 +238,15 @@ GROUP_BY(31)(l_orderkey)
         => Targets: default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)
         => out schema: {(2) default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)}
         => in  schema: {(2) default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)}
-         JOIN(21)(INNER)
+         JOIN(22)(INNER)
            => Join Cond: default.d.l_partkey (INT4) = default.part.p_partkey (INT4)
            => target list: default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)
            => out schema: {(2) default.d.l_orderkey (INT4), default.d.l_quantity (FLOAT8)}
            => in schema: {(4) default.d.l_orderkey (INT4), default.d.l_partkey (INT4), default.d.l_quantity (FLOAT8), default.part.p_partkey (INT4)}
-            SCAN(30) on eb_0000000000000_0000_000007
+            SCAN(31) on eb_0000000000000_0000_000007
               => out schema: {(1) default.part.p_partkey (INT4)}
               => in schema: {(1) default.part.p_partkey (INT4)}
-            SCAN(29) on eb_0000000000000_0000_000006
+            SCAN(30) on eb_0000000000000_0000_000006
               => out schema: {(3) default.d.l_orderkey (INT4), default.d.l_partkey (INT4), default.d.l_quantity (FLOAT8)}
               => in schema: {(3) default.d.l_orderkey (INT4), default.d.l_partkey (INT4), default.d.l_quantity (FLOAT8)}
 
@@ -273,7 +273,7 @@ TABLE_SUBQUERY(14) as default.f
         => target list: default.e.l_orderkey (INT4), avg_quantity (FLOAT8)
         => out schema:{(2) avg_quantity (FLOAT8), default.e.l_orderkey (INT4)}
         => in schema:{(2) default.e.l_orderkey (INT4), ?avg_11 (PROTOBUF)}
-         SCAN(32) on eb_0000000000000_0000_000008
+         SCAN(33) on eb_0000000000000_0000_000008
            => out schema: {(2) default.e.l_orderkey (INT4), ?avg_11 (PROTOBUF)}
            => in schema: {(2) default.e.l_orderkey (INT4), ?avg_11 (PROTOBUF)}
 
@@ -288,22 +288,22 @@ Block Id: eb_0000000000000_0000_000010 [INTERMEDIATE]
 [Outgoing]
 [q_0000000000000_0000] 10 => 11 (type=HASH_SHUFFLE, key=, num=1)
 
-GROUP_BY(35)()
+GROUP_BY(36)()
   => exprs: (sum(default.b.l_quantity (FLOAT8)))
   => target list: ?sum_12 (FLOAT8)
   => out schema:{(1) ?sum_12 (FLOAT8)}
   => in schema:{(2) default.b.l_quantity (FLOAT8), default.f.avg_quantity (FLOAT8)}
-   SELECTION(16)
+   SELECTION(20)
      => Search Cond: default.b.l_quantity (FLOAT8) > default.f.avg_quantity (FLOAT8)
-      JOIN(23)(INNER)
+      JOIN(24)(INNER)
         => Join Cond: default.c.o_orderkey (INT4) = default.f.l_orderkey (INT4)
         => target list: default.b.l_quantity (FLOAT8), default.f.avg_quantity (FLOAT8)
         => out schema: {(2) default.b.l_quantity (FLOAT8), default.f.avg_quantity (FLOAT8)}
         => in schema: {(4) default.b.l_quantity (FLOAT8), default.c.o_orderkey (INT4), default.f.avg_quantity (FLOAT8), default.f.l_orderkey (INT4)}
-         SCAN(34) on eb_0000000000000_0000_000009
+         SCAN(35) on eb_0000000000000_0000_000009
            => out schema: {(2) default.f.avg_quantity (FLOAT8), default.f.l_orderkey (INT4)}
            => in schema: {(2) default.f.avg_quantity (FLOAT8), default.f.l_orderkey (INT4)}
-         SCAN(33) on eb_0000000000000_0000_000005
+         SCAN(34) on eb_0000000000000_0000_000005
            => out schema: {(2) default.b.l_quantity (FLOAT8), default.c.o_orderkey (INT4)}
            => in schema: {(2) default.b.l_quantity (FLOAT8), default.c.o_orderkey (INT4)}
 
@@ -319,7 +319,7 @@ GROUP_BY(18)()
   => target list: ?sum (FLOAT8)
   => out schema:{(1) ?sum (FLOAT8)}
   => in schema:{(1) ?sum_12 (FLOAT8)}
-   SCAN(36) on eb_0000000000000_0000_000010
+   SCAN(37) on eb_0000000000000_0000_000010
      => out schema: {(1) ?sum_12 (FLOAT8)}
      => in schema: {(1) ?sum_12 (FLOAT8)}
 

http://git-wip-us.apache.org/repos/asf/tajo/blob/bcec5eb7/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testJoinWithMultipleJoinQual4.Hash.plan
----------------------------------------------------------------------
diff --git a/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testJoinWithMultipleJoinQual4.Hash.plan b/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testJoinWithMultipleJoinQual4.Hash.plan
index 8d739f6..f249f0e 100644
--- a/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testJoinWithMultipleJoinQual4.Hash.plan
+++ b/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testJoinWithMultipleJoinQual4.Hash.plan
@@ -1,8 +1,8 @@
 explain
 -------------------------------
-SELECTION(9)
+SELECTION(12)
   => Search Cond: default.t.n_nationkey (INT4) > default.s.s_suppkey (INT4)
-   JOIN(14)(INNER)
+   JOIN(15)(INNER)
      => Join Cond: default.s.s_nationkey (INT4) = default.t.n_nationkey (INT4)
      => target list: default.ps.ps_availqty (INT4), default.s.s_suppkey (INT4), default.t.n_comment (TEXT), default.t.n_name (TEXT), default.t.n_nationkey (INT4), default.t.n_regionkey (INT4)
      => out schema: {(6) default.ps.ps_availqty (INT4), default.s.s_suppkey (INT4), default.t.n_comment (TEXT), default.t.n_name (TEXT), default.t.n_nationkey (INT4), default.t.n_regionkey (INT4)}
@@ -11,7 +11,7 @@ SELECTION(9)
         => Targets: default.t.n_nationkey (INT4), default.t.n_name (TEXT), default.t.n_regionkey (INT4), default.t.n_comment (TEXT)
         => out schema: {(4) default.t.n_comment (TEXT), default.t.n_name (TEXT), default.t.n_nationkey (INT4), default.t.n_regionkey (INT4)}
         => in  schema: {(4) default.t.n_comment (TEXT), default.t.n_name (TEXT), default.t.n_nationkey (INT4), default.t.n_regionkey (INT4)}
-         JOIN(12)(INNER)
+         JOIN(13)(INNER)
            => Join Cond: default.n.n_regionkey (INT4) = default.r.r_regionkey (INT4)
            => target list: default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)
            => out schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
@@ -25,7 +25,7 @@ SELECTION(9)
               => target list: default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)
               => out schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
               => in schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
-      JOIN(13)(INNER)
+      JOIN(14)(INNER)
         => Join Cond: default.s.s_suppkey (INT4) = default.ps.ps_suppkey (INT4)
         => target list: default.ps.ps_availqty (INT4), default.s.s_nationkey (INT4), default.s.s_suppkey (INT4)
         => out schema: {(3) default.ps.ps_availqty (INT4), default.s.s_nationkey (INT4), default.s.s_suppkey (INT4)}
@@ -61,9 +61,9 @@ Block Id: eb_0000000000000_0000_000007 [ROOT]
  1: type=Broadcast, tables=default.s
  2: type=Broadcast, tables=default.r
 
-SELECTION(9)
+SELECTION(12)
   => Search Cond: default.t.n_nationkey (INT4) > default.s.s_suppkey (INT4)
-   JOIN(14)(INNER)
+   JOIN(15)(INNER)
      => Join Cond: default.s.s_nationkey (INT4) = default.t.n_nationkey (INT4)
      => target list: default.ps.ps_availqty (INT4), default.s.s_suppkey (INT4), default.t.n_comment (TEXT), default.t.n_name (TEXT), default.t.n_nationkey (INT4), default.t.n_regionkey (INT4)
      => out schema: {(6) default.ps.ps_availqty (INT4), default.s.s_suppkey (INT4), default.t.n_comment (TEXT), default.t.n_name (TEXT), default.t.n_nationkey (INT4), default.t.n_regionkey (INT4)}
@@ -76,7 +76,7 @@ SELECTION(9)
            => Targets: default.n.n_nationkey (INT4), default.n.n_name (TEXT), default.n.n_regionkey (INT4), default.n.n_comment (TEXT)
            => out schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
            => in  schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
-            JOIN(12)(INNER)
+            JOIN(13)(INNER)
               => Join Cond: default.n.n_regionkey (INT4) = default.r.r_regionkey (INT4)
               => target list: default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)
               => out schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
@@ -90,7 +90,7 @@ SELECTION(9)
                  => target list: default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)
                  => out schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
                  => in schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
-      JOIN(13)(INNER)
+      JOIN(14)(INNER)
         => Join Cond: default.s.s_suppkey (INT4) = default.ps.ps_suppkey (INT4)
         => target list: default.ps.ps_availqty (INT4), default.s.s_nationkey (INT4), default.s.s_suppkey (INT4)
         => out schema: {(3) default.ps.ps_availqty (INT4), default.s.s_nationkey (INT4), default.s.s_suppkey (INT4)}

http://git-wip-us.apache.org/repos/asf/tajo/blob/bcec5eb7/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testJoinWithMultipleJoinQual4.Hash_NoBroadcast.plan
----------------------------------------------------------------------
diff --git a/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testJoinWithMultipleJoinQual4.Hash_NoBroadcast.plan b/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testJoinWithMultipleJoinQual4.Hash_NoBroadcast.plan
index d80eea0..554ee76 100644
--- a/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testJoinWithMultipleJoinQual4.Hash_NoBroadcast.plan
+++ b/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testJoinWithMultipleJoinQual4.Hash_NoBroadcast.plan
@@ -1,8 +1,8 @@
 explain
 -------------------------------
-SELECTION(9)
+SELECTION(12)
   => Search Cond: default.t.n_nationkey (INT4) > default.s.s_suppkey (INT4)
-   JOIN(14)(INNER)
+   JOIN(15)(INNER)
      => Join Cond: default.s.s_nationkey (INT4) = default.t.n_nationkey (INT4)
      => target list: default.ps.ps_availqty (INT4), default.s.s_suppkey (INT4), default.t.n_comment (TEXT), default.t.n_name (TEXT), default.t.n_nationkey (INT4), default.t.n_regionkey (INT4)
      => out schema: {(6) default.ps.ps_availqty (INT4), default.s.s_suppkey (INT4), default.t.n_comment (TEXT), default.t.n_name (TEXT), default.t.n_nationkey (INT4), default.t.n_regionkey (INT4)}
@@ -11,7 +11,7 @@ SELECTION(9)
         => Targets: default.t.n_nationkey (INT4), default.t.n_name (TEXT), default.t.n_regionkey (INT4), default.t.n_comment (TEXT)
         => out schema: {(4) default.t.n_comment (TEXT), default.t.n_name (TEXT), default.t.n_nationkey (INT4), default.t.n_regionkey (INT4)}
         => in  schema: {(4) default.t.n_comment (TEXT), default.t.n_name (TEXT), default.t.n_nationkey (INT4), default.t.n_regionkey (INT4)}
-         JOIN(12)(INNER)
+         JOIN(13)(INNER)
            => Join Cond: default.n.n_regionkey (INT4) = default.r.r_regionkey (INT4)
            => target list: default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)
            => out schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
@@ -25,7 +25,7 @@ SELECTION(9)
               => target list: default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)
               => out schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
               => in schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
-      JOIN(13)(INNER)
+      JOIN(14)(INNER)
         => Join Cond: default.s.s_suppkey (INT4) = default.ps.ps_suppkey (INT4)
         => target list: default.ps.ps_availqty (INT4), default.s.s_nationkey (INT4), default.s.s_suppkey (INT4)
         => out schema: {(3) default.ps.ps_availqty (INT4), default.s.s_nationkey (INT4), default.s.s_suppkey (INT4)}
@@ -124,15 +124,15 @@ Block Id: eb_0000000000000_0000_000003 [INTERMEDIATE]
 [Outgoing]
 [q_0000000000000_0000] 3 => 7 (type=HASH_SHUFFLE, key=default.s.s_nationkey (INT4), num=32)
 
-JOIN(13)(INNER)
+JOIN(14)(INNER)
   => Join Cond: default.s.s_suppkey (INT4) = default.ps.ps_suppkey (INT4)
   => target list: default.ps.ps_availqty (INT4), default.s.s_nationkey (INT4), default.s.s_suppkey (INT4)
   => out schema: {(3) default.ps.ps_availqty (INT4), default.s.s_nationkey (INT4), default.s.s_suppkey (INT4)}
   => in schema: {(4) default.ps.ps_availqty (INT4), default.ps.ps_suppkey (INT4), default.s.s_nationkey (INT4), default.s.s_suppkey (INT4)}
-   SCAN(17) on eb_0000000000000_0000_000002
+   SCAN(18) on eb_0000000000000_0000_000002
      => out schema: {(2) default.s.s_nationkey (INT4), default.s.s_suppkey (INT4)}
      => in schema: {(2) default.s.s_nationkey (INT4), default.s.s_suppkey (INT4)}
-   SCAN(16) on eb_0000000000000_0000_000001
+   SCAN(17) on eb_0000000000000_0000_000001
      => out schema: {(2) default.ps.ps_availqty (INT4), default.ps.ps_suppkey (INT4)}
      => in schema: {(2) default.ps.ps_availqty (INT4), default.ps.ps_suppkey (INT4)}
 
@@ -155,15 +155,15 @@ TABLE_SUBQUERY(4) as default.t
      => Targets: default.n.n_nationkey (INT4), default.n.n_name (TEXT), default.n.n_regionkey (INT4), default.n.n_comment (TEXT)
      => out schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
      => in  schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
-      JOIN(12)(INNER)
+      JOIN(13)(INNER)
         => Join Cond: default.n.n_regionkey (INT4) = default.r.r_regionkey (INT4)
         => target list: default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)
         => out schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
         => in schema: {(5) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4), default.r.r_regionkey (INT4)}
-         SCAN(19) on eb_0000000000000_0000_000005
+         SCAN(20) on eb_0000000000000_0000_000005
            => out schema: {(1) default.r.r_regionkey (INT4)}
            => in schema: {(1) default.r.r_regionkey (INT4)}
-         SCAN(18) on eb_0000000000000_0000_000004
+         SCAN(19) on eb_0000000000000_0000_000004
            => out schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
            => in schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
 
@@ -175,17 +175,17 @@ Block Id: eb_0000000000000_0000_000007 [ROOT]
 [q_0000000000000_0000] 3 => 7 (type=HASH_SHUFFLE, key=default.s.s_nationkey (INT4), num=32)
 [q_0000000000000_0000] 6 => 7 (type=HASH_SHUFFLE, key=default.t.n_nationkey (INT4), num=32)
 
-SELECTION(9)
+SELECTION(12)
   => Search Cond: default.t.n_nationkey (INT4) > default.s.s_suppkey (INT4)
-   JOIN(14)(INNER)
+   JOIN(15)(INNER)
      => Join Cond: default.s.s_nationkey (INT4) = default.t.n_nationkey (INT4)
      => target list: default.ps.ps_availqty (INT4), default.s.s_suppkey (INT4), default.t.n_comment (TEXT), default.t.n_name (TEXT), default.t.n_nationkey (INT4), default.t.n_regionkey (INT4)
      => out schema: {(6) default.ps.ps_availqty (INT4), default.s.s_suppkey (INT4), default.t.n_comment (TEXT), default.t.n_name (TEXT), default.t.n_nationkey (INT4), default.t.n_regionkey (INT4)}
      => in schema: {(7) default.ps.ps_availqty (INT4), default.s.s_nationkey (INT4), default.s.s_suppkey (INT4), default.t.n_comment (TEXT), default.t.n_name (TEXT), default.t.n_nationkey (INT4), default.t.n_regionkey (INT4)}
-      SCAN(21) on eb_0000000000000_0000_000006
+      SCAN(22) on eb_0000000000000_0000_000006
         => out schema: {(4) default.t.n_nationkey (INT4), default.t.n_name (TEXT), default.t.n_regionkey (INT4), default.t.n_comment (TEXT)}
         => in schema: {(4) default.t.n_nationkey (INT4), default.t.n_name (TEXT), default.t.n_regionkey (INT4), default.t.n_comment (TEXT)}
-      SCAN(20) on eb_0000000000000_0000_000003
+      SCAN(21) on eb_0000000000000_0000_000003
         => out schema: {(3) default.ps.ps_availqty (INT4), default.s.s_nationkey (INT4), default.s.s_suppkey (INT4)}
         => in schema: {(3) default.ps.ps_availqty (INT4), default.s.s_nationkey (INT4), default.s.s_suppkey (INT4)}
 

http://git-wip-us.apache.org/repos/asf/tajo/blob/bcec5eb7/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testJoinWithMultipleJoinQual4.Sort.plan
----------------------------------------------------------------------
diff --git a/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testJoinWithMultipleJoinQual4.Sort.plan b/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testJoinWithMultipleJoinQual4.Sort.plan
index 8d739f6..f249f0e 100644
--- a/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testJoinWithMultipleJoinQual4.Sort.plan
+++ b/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testJoinWithMultipleJoinQual4.Sort.plan
@@ -1,8 +1,8 @@
 explain
 -------------------------------
-SELECTION(9)
+SELECTION(12)
   => Search Cond: default.t.n_nationkey (INT4) > default.s.s_suppkey (INT4)
-   JOIN(14)(INNER)
+   JOIN(15)(INNER)
      => Join Cond: default.s.s_nationkey (INT4) = default.t.n_nationkey (INT4)
      => target list: default.ps.ps_availqty (INT4), default.s.s_suppkey (INT4), default.t.n_comment (TEXT), default.t.n_name (TEXT), default.t.n_nationkey (INT4), default.t.n_regionkey (INT4)
      => out schema: {(6) default.ps.ps_availqty (INT4), default.s.s_suppkey (INT4), default.t.n_comment (TEXT), default.t.n_name (TEXT), default.t.n_nationkey (INT4), default.t.n_regionkey (INT4)}
@@ -11,7 +11,7 @@ SELECTION(9)
         => Targets: default.t.n_nationkey (INT4), default.t.n_name (TEXT), default.t.n_regionkey (INT4), default.t.n_comment (TEXT)
         => out schema: {(4) default.t.n_comment (TEXT), default.t.n_name (TEXT), default.t.n_nationkey (INT4), default.t.n_regionkey (INT4)}
         => in  schema: {(4) default.t.n_comment (TEXT), default.t.n_name (TEXT), default.t.n_nationkey (INT4), default.t.n_regionkey (INT4)}
-         JOIN(12)(INNER)
+         JOIN(13)(INNER)
            => Join Cond: default.n.n_regionkey (INT4) = default.r.r_regionkey (INT4)
            => target list: default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)
            => out schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
@@ -25,7 +25,7 @@ SELECTION(9)
               => target list: default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)
               => out schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
               => in schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
-      JOIN(13)(INNER)
+      JOIN(14)(INNER)
         => Join Cond: default.s.s_suppkey (INT4) = default.ps.ps_suppkey (INT4)
         => target list: default.ps.ps_availqty (INT4), default.s.s_nationkey (INT4), default.s.s_suppkey (INT4)
         => out schema: {(3) default.ps.ps_availqty (INT4), default.s.s_nationkey (INT4), default.s.s_suppkey (INT4)}
@@ -61,9 +61,9 @@ Block Id: eb_0000000000000_0000_000007 [ROOT]
  1: type=Broadcast, tables=default.s
  2: type=Broadcast, tables=default.r
 
-SELECTION(9)
+SELECTION(12)
   => Search Cond: default.t.n_nationkey (INT4) > default.s.s_suppkey (INT4)
-   JOIN(14)(INNER)
+   JOIN(15)(INNER)
      => Join Cond: default.s.s_nationkey (INT4) = default.t.n_nationkey (INT4)
      => target list: default.ps.ps_availqty (INT4), default.s.s_suppkey (INT4), default.t.n_comment (TEXT), default.t.n_name (TEXT), default.t.n_nationkey (INT4), default.t.n_regionkey (INT4)
      => out schema: {(6) default.ps.ps_availqty (INT4), default.s.s_suppkey (INT4), default.t.n_comment (TEXT), default.t.n_name (TEXT), default.t.n_nationkey (INT4), default.t.n_regionkey (INT4)}
@@ -76,7 +76,7 @@ SELECTION(9)
            => Targets: default.n.n_nationkey (INT4), default.n.n_name (TEXT), default.n.n_regionkey (INT4), default.n.n_comment (TEXT)
            => out schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
            => in  schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
-            JOIN(12)(INNER)
+            JOIN(13)(INNER)
               => Join Cond: default.n.n_regionkey (INT4) = default.r.r_regionkey (INT4)
               => target list: default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)
               => out schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
@@ -90,7 +90,7 @@ SELECTION(9)
                  => target list: default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)
                  => out schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
                  => in schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
-      JOIN(13)(INNER)
+      JOIN(14)(INNER)
         => Join Cond: default.s.s_suppkey (INT4) = default.ps.ps_suppkey (INT4)
         => target list: default.ps.ps_availqty (INT4), default.s.s_nationkey (INT4), default.s.s_suppkey (INT4)
         => out schema: {(3) default.ps.ps_availqty (INT4), default.s.s_nationkey (INT4), default.s.s_suppkey (INT4)}

http://git-wip-us.apache.org/repos/asf/tajo/blob/bcec5eb7/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testJoinWithMultipleJoinQual4.Sort_NoBroadcast.plan
----------------------------------------------------------------------
diff --git a/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testJoinWithMultipleJoinQual4.Sort_NoBroadcast.plan b/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testJoinWithMultipleJoinQual4.Sort_NoBroadcast.plan
index d80eea0..554ee76 100644
--- a/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testJoinWithMultipleJoinQual4.Sort_NoBroadcast.plan
+++ b/tajo-core/src/test/resources/results/TestInnerJoinWithSubQuery/testJoinWithMultipleJoinQual4.Sort_NoBroadcast.plan
@@ -1,8 +1,8 @@
 explain
 -------------------------------
-SELECTION(9)
+SELECTION(12)
   => Search Cond: default.t.n_nationkey (INT4) > default.s.s_suppkey (INT4)
-   JOIN(14)(INNER)
+   JOIN(15)(INNER)
      => Join Cond: default.s.s_nationkey (INT4) = default.t.n_nationkey (INT4)
      => target list: default.ps.ps_availqty (INT4), default.s.s_suppkey (INT4), default.t.n_comment (TEXT), default.t.n_name (TEXT), default.t.n_nationkey (INT4), default.t.n_regionkey (INT4)
      => out schema: {(6) default.ps.ps_availqty (INT4), default.s.s_suppkey (INT4), default.t.n_comment (TEXT), default.t.n_name (TEXT), default.t.n_nationkey (INT4), default.t.n_regionkey (INT4)}
@@ -11,7 +11,7 @@ SELECTION(9)
         => Targets: default.t.n_nationkey (INT4), default.t.n_name (TEXT), default.t.n_regionkey (INT4), default.t.n_comment (TEXT)
         => out schema: {(4) default.t.n_comment (TEXT), default.t.n_name (TEXT), default.t.n_nationkey (INT4), default.t.n_regionkey (INT4)}
         => in  schema: {(4) default.t.n_comment (TEXT), default.t.n_name (TEXT), default.t.n_nationkey (INT4), default.t.n_regionkey (INT4)}
-         JOIN(12)(INNER)
+         JOIN(13)(INNER)
            => Join Cond: default.n.n_regionkey (INT4) = default.r.r_regionkey (INT4)
            => target list: default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)
            => out schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
@@ -25,7 +25,7 @@ SELECTION(9)
               => target list: default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)
               => out schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
               => in schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
-      JOIN(13)(INNER)
+      JOIN(14)(INNER)
         => Join Cond: default.s.s_suppkey (INT4) = default.ps.ps_suppkey (INT4)
         => target list: default.ps.ps_availqty (INT4), default.s.s_nationkey (INT4), default.s.s_suppkey (INT4)
         => out schema: {(3) default.ps.ps_availqty (INT4), default.s.s_nationkey (INT4), default.s.s_suppkey (INT4)}
@@ -124,15 +124,15 @@ Block Id: eb_0000000000000_0000_000003 [INTERMEDIATE]
 [Outgoing]
 [q_0000000000000_0000] 3 => 7 (type=HASH_SHUFFLE, key=default.s.s_nationkey (INT4), num=32)
 
-JOIN(13)(INNER)
+JOIN(14)(INNER)
   => Join Cond: default.s.s_suppkey (INT4) = default.ps.ps_suppkey (INT4)
   => target list: default.ps.ps_availqty (INT4), default.s.s_nationkey (INT4), default.s.s_suppkey (INT4)
   => out schema: {(3) default.ps.ps_availqty (INT4), default.s.s_nationkey (INT4), default.s.s_suppkey (INT4)}
   => in schema: {(4) default.ps.ps_availqty (INT4), default.ps.ps_suppkey (INT4), default.s.s_nationkey (INT4), default.s.s_suppkey (INT4)}
-   SCAN(17) on eb_0000000000000_0000_000002
+   SCAN(18) on eb_0000000000000_0000_000002
      => out schema: {(2) default.s.s_nationkey (INT4), default.s.s_suppkey (INT4)}
      => in schema: {(2) default.s.s_nationkey (INT4), default.s.s_suppkey (INT4)}
-   SCAN(16) on eb_0000000000000_0000_000001
+   SCAN(17) on eb_0000000000000_0000_000001
      => out schema: {(2) default.ps.ps_availqty (INT4), default.ps.ps_suppkey (INT4)}
      => in schema: {(2) default.ps.ps_availqty (INT4), default.ps.ps_suppkey (INT4)}
 
@@ -155,15 +155,15 @@ TABLE_SUBQUERY(4) as default.t
      => Targets: default.n.n_nationkey (INT4), default.n.n_name (TEXT), default.n.n_regionkey (INT4), default.n.n_comment (TEXT)
      => out schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
      => in  schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
-      JOIN(12)(INNER)
+      JOIN(13)(INNER)
         => Join Cond: default.n.n_regionkey (INT4) = default.r.r_regionkey (INT4)
         => target list: default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)
         => out schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
         => in schema: {(5) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4), default.r.r_regionkey (INT4)}
-         SCAN(19) on eb_0000000000000_0000_000005
+         SCAN(20) on eb_0000000000000_0000_000005
            => out schema: {(1) default.r.r_regionkey (INT4)}
            => in schema: {(1) default.r.r_regionkey (INT4)}
-         SCAN(18) on eb_0000000000000_0000_000004
+         SCAN(19) on eb_0000000000000_0000_000004
            => out schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
            => in schema: {(4) default.n.n_comment (TEXT), default.n.n_name (TEXT), default.n.n_nationkey (INT4), default.n.n_regionkey (INT4)}
 
@@ -175,17 +175,17 @@ Block Id: eb_0000000000000_0000_000007 [ROOT]
 [q_0000000000000_0000] 3 => 7 (type=HASH_SHUFFLE, key=default.s.s_nationkey (INT4), num=32)
 [q_0000000000000_0000] 6 => 7 (type=HASH_SHUFFLE, key=default.t.n_nationkey (INT4), num=32)
 
-SELECTION(9)
+SELECTION(12)
   => Search Cond: default.t.n_nationkey (INT4) > default.s.s_suppkey (INT4)
-   JOIN(14)(INNER)
+   JOIN(15)(INNER)
      => Join Cond: default.s.s_nationkey (INT4) = default.t.n_nationkey (INT4)
      => target list: default.ps.ps_availqty (INT4), default.s.s_suppkey (INT4), default.t.n_comment (TEXT), default.t.n_name (TEXT), default.t.n_nationkey (INT4), default.t.n_regionkey (INT4)
      => out schema: {(6) default.ps.ps_availqty (INT4), default.s.s_suppkey (INT4), default.t.n_comment (TEXT), default.t.n_name (TEXT), default.t.n_nationkey (INT4), default.t.n_regionkey (INT4)}
      => in schema: {(7) default.ps.ps_availqty (INT4), default.s.s_nationkey (INT4), default.s.s_suppkey (INT4), default.t.n_comment (TEXT), default.t.n_name (TEXT), default.t.n_nationkey (INT4), default.t.n_regionkey (INT4)}
-      SCAN(21) on eb_0000000000000_0000_000006
+      SCAN(22) on eb_0000000000000_0000_000006
         => out schema: {(4) default.t.n_nationkey (INT4), default.t.n_name (TEXT), default.t.n_regionkey (INT4), default.t.n_comment (TEXT)}
         => in schema: {(4) default.t.n_nationkey (INT4), default.t.n_name (TEXT), default.t.n_regionkey (INT4), default.t.n_comment (TEXT)}
-      SCAN(20) on eb_0000000000000_0000_000003
+      SCAN(21) on eb_0000000000000_0000_000003
         => out schema: {(3) default.ps.ps_availqty (INT4), default.s.s_nationkey (INT4), default.s.s_suppkey (INT4)}
         => in schema: {(3) default.ps.ps_availqty (INT4), default.s.s_nationkey (INT4), default.s.s_suppkey (INT4)}
 


Mime
View raw message