http://git-wip-us.apache.org/repos/asf/tajo/blob/0c9b6a6e/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoin3.Sort_NoBroadcast.plan ---------------------------------------------------------------------- diff --git a/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoin3.Sort_NoBroadcast.plan b/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoin3.Sort_NoBroadcast.plan index 04d0ae6..a21d2b0 100644 --- a/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoin3.Sort_NoBroadcast.plan +++ b/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoin3.Sort_NoBroadcast.plan @@ -10,41 +10,41 @@ JOIN(17)(LEFT_OUTER) => out schema: {(2) default.f.p_name (TEXT), default.f.p_partkey (INT4)} => in schema: {(9) default.f.p_brand (TEXT), default.f.p_comment (TEXT), default.f.p_container (TEXT), default.f.p_mfgr (TEXT), default.f.p_name (TEXT), default.f.p_partkey (INT4), default.f.p_retailprice (FLOAT8), default.f.p_size (INT4), default.f.p_type (TEXT)} JOIN(16)(LEFT_OUTER) - => Join Cond: default.d.o_orderkey (INT4) = default.e.n_nationkey (INT4) + => Join Cond: default.a.c_custkey (INT4) = default.d.o_orderkey (INT4) => target list: default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT), default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4), default.e.n_name (TEXT) => out schema: {(8) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT), default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4), default.e.n_name (TEXT)} - => in schema: {(9) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT), default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4), default.e.n_name (TEXT), default.e.n_nationkey (INT4)} - SCAN(7) on default.nation as e - => target list: default.e.n_name (TEXT), default.e.n_nationkey (INT4) - => out schema: {(2) default.e.n_name (TEXT), default.e.n_nationkey (INT4)} - => in schema: {(4) default.e.n_comment (TEXT), default.e.n_name (TEXT), default.e.n_nationkey (INT4), default.e.n_regionkey (INT4)} + => in schema: {(8) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT), default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4), default.e.n_name (TEXT)} JOIN(15)(LEFT_OUTER) - => Join Cond: default.a.c_custkey (INT4) = default.d.o_orderkey (INT4) - => target list: default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT), default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4) - => out schema: {(7) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT), default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4)} - => in schema: {(7) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT), default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4)} + => Join Cond: default.d.o_orderkey (INT4) = default.e.n_nationkey (INT4) + => target list: default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4), default.e.n_name (TEXT) + => out schema: {(3) default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4), default.e.n_name (TEXT)} + => in schema: {(4) default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4), default.e.n_name (TEXT), default.e.n_nationkey (INT4)} + SCAN(7) on default.nation as e + => target list: default.e.n_name (TEXT), default.e.n_nationkey (INT4) + => out schema: {(2) default.e.n_name (TEXT), default.e.n_nationkey (INT4)} + => in schema: {(4) default.e.n_comment (TEXT), default.e.n_name (TEXT), default.e.n_nationkey (INT4), default.e.n_regionkey (INT4)} SCAN(5) on default.orders as d => target list: default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4) => out schema: {(2) default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4)} => in schema: {(9) default.d.o_clerk (TEXT), default.d.o_comment (TEXT), default.d.o_custkey (INT4), default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4), default.d.o_orderpriority (TEXT), default.d.o_orderstatus (TEXT), default.d.o_shippriority (INT4), default.d.o_totalprice (FLOAT8)} - JOIN(14)(LEFT_OUTER) + JOIN(14)(LEFT_OUTER) + => Join Cond: default.b.l_orderkey (INT4) = default.c.o_orderkey (INT4) + => target list: default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT) + => out schema: {(5) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT)} + => in schema: {(6) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT), default.c.o_orderkey (INT4)} + SCAN(3) on default.orders as c + => target list: default.c.o_orderdate (TEXT), default.c.o_orderkey (INT4) + => out schema: {(2) default.c.o_orderdate (TEXT), default.c.o_orderkey (INT4)} + => in schema: {(9) default.c.o_clerk (TEXT), default.c.o_comment (TEXT), default.c.o_custkey (INT4), default.c.o_orderdate (TEXT), default.c.o_orderkey (INT4), default.c.o_orderpriority (TEXT), default.c.o_orderstatus (TEXT), default.c.o_shippriority (INT4), default.c.o_totalprice (FLOAT8)} + JOIN(13)(LEFT_OUTER) => Join Cond: default.a.c_custkey (INT4) = default.b.l_orderkey (INT4) - => target list: default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT) - => out schema: {(5) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT)} - => in schema: {(5) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT)} - JOIN(13)(LEFT_OUTER) - => Join Cond: default.b.l_orderkey (INT4) = default.c.o_orderkey (INT4) - => target list: default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT) - => out schema: {(2) default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT)} - => in schema: {(3) default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT), default.c.o_orderkey (INT4)} - SCAN(3) on default.orders as c - => target list: default.c.o_orderdate (TEXT), default.c.o_orderkey (INT4) - => out schema: {(2) default.c.o_orderdate (TEXT), default.c.o_orderkey (INT4)} - => in schema: {(9) default.c.o_clerk (TEXT), default.c.o_comment (TEXT), default.c.o_custkey (INT4), default.c.o_orderdate (TEXT), default.c.o_orderkey (INT4), default.c.o_orderpriority (TEXT), default.c.o_orderstatus (TEXT), default.c.o_shippriority (INT4), default.c.o_totalprice (FLOAT8)} - SCAN(1) on default.lineitem as b - => target list: default.b.l_orderkey (INT4) - => out schema: {(1) default.b.l_orderkey (INT4)} - => in schema: {(16) default.b.l_comment (TEXT), default.b.l_commitdate (TEXT), default.b.l_discount (FLOAT8), default.b.l_extendedprice (FLOAT8), default.b.l_linenumber (INT4), default.b.l_linestatus (TEXT), default.b.l_orderkey (INT4), default.b.l_partkey (INT4), default.b.l_quantity (FLOAT8), default.b.l_receiptdate (TEXT), default.b.l_returnflag (TEXT), default.b.l_shipdate (TEXT), default.b.l_shipinstruct (TEXT), default.b.l_shipmode (TEXT), default.b.l_suppkey (INT4), default.b.l_tax (FLOAT8)} + => target list: default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4) + => out schema: {(4) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4)} + => in schema: {(4) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4)} + SCAN(1) on default.lineitem as b + => target list: default.b.l_orderkey (INT4) + => out schema: {(1) default.b.l_orderkey (INT4)} + => in schema: {(16) default.b.l_comment (TEXT), default.b.l_commitdate (TEXT), default.b.l_discount (FLOAT8), default.b.l_extendedprice (FLOAT8), default.b.l_linenumber (INT4), default.b.l_linestatus (TEXT), default.b.l_orderkey (INT4), default.b.l_partkey (INT4), default.b.l_quantity (FLOAT8), default.b.l_receiptdate (TEXT), default.b.l_returnflag (TEXT), default.b.l_shipdate (TEXT), default.b.l_shipinstruct (TEXT), default.b.l_shipmode (TEXT), default.b.l_suppkey (INT4), default.b.l_tax (FLOAT8)} SCAN(0) on default.customer as a => target list: default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4) => out schema: {(3) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4)} @@ -59,23 +59,23 @@ Execution Block Graph (TERMINAL - eb_0000000000000_0000_000012) |-eb_0000000000000_0000_000010 |-eb_0000000000000_0000_000009 |-eb_0000000000000_0000_000008 - |-eb_0000000000000_0000_000007 + |-eb_0000000000000_0000_000007 |-eb_0000000000000_0000_000006 - |-eb_0000000000000_0000_000005 - |-eb_0000000000000_0000_000004 - |-eb_0000000000000_0000_000003 - |-eb_0000000000000_0000_000002 + |-eb_0000000000000_0000_000005 + |-eb_0000000000000_0000_000004 + |-eb_0000000000000_0000_000003 + |-eb_0000000000000_0000_000002 |-eb_0000000000000_0000_000001 ------------------------------------------------------------------------------- Order of Execution ------------------------------------------------------------------------------- -1: eb_0000000000000_0000_000002 -2: eb_0000000000000_0000_000003 -3: eb_0000000000000_0000_000004 -4: eb_0000000000000_0000_000001 -5: eb_0000000000000_0000_000005 -6: eb_0000000000000_0000_000006 -7: eb_0000000000000_0000_000007 +1: eb_0000000000000_0000_000001 +2: eb_0000000000000_0000_000002 +3: eb_0000000000000_0000_000003 +4: eb_0000000000000_0000_000004 +5: eb_0000000000000_0000_000006 +6: eb_0000000000000_0000_000007 +7: eb_0000000000000_0000_000005 8: eb_0000000000000_0000_000008 9: eb_0000000000000_0000_000009 10: eb_0000000000000_0000_000010 @@ -84,11 +84,23 @@ Order of Execution ------------------------------------------------------------------------------- ======================================================= +Block Id: eb_0000000000000_0000_000001 [LEAF] +======================================================= + +[Outgoing] +[q_0000000000000_0000] 1 => 3 (type=HASH_SHUFFLE, key=default.a.c_custkey (INT4), num=32) + +SCAN(0) on default.customer as a + => target list: default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4) + => out schema: {(3) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4)} + => in schema: {(8) default.a.c_acctbal (FLOAT8), default.a.c_address (TEXT), default.a.c_comment (TEXT), default.a.c_custkey (INT4), default.a.c_mktsegment (TEXT), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.a.c_phone (TEXT)} + +======================================================= Block Id: eb_0000000000000_0000_000002 [LEAF] ======================================================= [Outgoing] -[q_0000000000000_0000] 2 => 4 (type=HASH_SHUFFLE, key=default.b.l_orderkey (INT4), num=32) +[q_0000000000000_0000] 2 => 3 (type=HASH_SHUFFLE, key=default.b.l_orderkey (INT4), num=32) SCAN(1) on default.lineitem as b => target list: default.b.l_orderkey (INT4) @@ -96,11 +108,34 @@ SCAN(1) on default.lineitem as b => in schema: {(16) default.b.l_comment (TEXT), default.b.l_commitdate (TEXT), default.b.l_discount (FLOAT8), default.b.l_extendedprice (FLOAT8), default.b.l_linenumber (INT4), default.b.l_linestatus (TEXT), default.b.l_orderkey (INT4), default.b.l_partkey (INT4), default.b.l_quantity (FLOAT8), default.b.l_receiptdate (TEXT), default.b.l_returnflag (TEXT), default.b.l_shipdate (TEXT), default.b.l_shipinstruct (TEXT), default.b.l_shipmode (TEXT), default.b.l_suppkey (INT4), default.b.l_tax (FLOAT8)} ======================================================= -Block Id: eb_0000000000000_0000_000003 [LEAF] +Block Id: eb_0000000000000_0000_000003 [INTERMEDIATE] +======================================================= + +[Incoming] +[q_0000000000000_0000] 1 => 3 (type=HASH_SHUFFLE, key=default.a.c_custkey (INT4), num=32) +[q_0000000000000_0000] 2 => 3 (type=HASH_SHUFFLE, key=default.b.l_orderkey (INT4), num=32) + +[Outgoing] +[q_0000000000000_0000] 3 => 5 (type=HASH_SHUFFLE, key=default.b.l_orderkey (INT4), num=32) + +JOIN(13)(LEFT_OUTER) + => Join Cond: default.a.c_custkey (INT4) = default.b.l_orderkey (INT4) + => target list: default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4) + => out schema: {(4) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4)} + => in schema: {(4) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4)} + SCAN(20) on eb_0000000000000_0000_000002 + => out schema: {(1) default.b.l_orderkey (INT4)} + => in schema: {(1) default.b.l_orderkey (INT4)} + SCAN(19) on eb_0000000000000_0000_000001 + => out schema: {(3) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4)} + => in schema: {(3) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4)} + +======================================================= +Block Id: eb_0000000000000_0000_000004 [LEAF] ======================================================= [Outgoing] -[q_0000000000000_0000] 3 => 4 (type=HASH_SHUFFLE, key=default.c.o_orderkey (INT4), num=32) +[q_0000000000000_0000] 4 => 5 (type=HASH_SHUFFLE, key=default.c.o_orderkey (INT4), num=32) SCAN(3) on default.orders as c => target list: default.c.o_orderdate (TEXT), default.c.o_orderkey (INT4) @@ -108,132 +143,97 @@ SCAN(3) on default.orders as c => in schema: {(9) default.c.o_clerk (TEXT), default.c.o_comment (TEXT), default.c.o_custkey (INT4), default.c.o_orderdate (TEXT), default.c.o_orderkey (INT4), default.c.o_orderpriority (TEXT), default.c.o_orderstatus (TEXT), default.c.o_shippriority (INT4), default.c.o_totalprice (FLOAT8)} ======================================================= -Block Id: eb_0000000000000_0000_000004 [INTERMEDIATE] +Block Id: eb_0000000000000_0000_000006 [LEAF] ======================================================= -[Incoming] -[q_0000000000000_0000] 2 => 4 (type=HASH_SHUFFLE, key=default.b.l_orderkey (INT4), num=32) -[q_0000000000000_0000] 3 => 4 (type=HASH_SHUFFLE, key=default.c.o_orderkey (INT4), num=32) - [Outgoing] -[q_0000000000000_0000] 4 => 5 (type=HASH_SHUFFLE, key=default.b.l_orderkey (INT4), num=32) +[q_0000000000000_0000] 6 => 8 (type=HASH_SHUFFLE, key=default.d.o_orderkey (INT4), num=32) -JOIN(13)(LEFT_OUTER) - => Join Cond: default.b.l_orderkey (INT4) = default.c.o_orderkey (INT4) - => target list: default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT) - => out schema: {(2) default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT)} - => in schema: {(3) default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT), default.c.o_orderkey (INT4)} - SCAN(20) on eb_0000000000000_0000_000003 - => out schema: {(2) default.c.o_orderdate (TEXT), default.c.o_orderkey (INT4)} - => in schema: {(2) default.c.o_orderdate (TEXT), default.c.o_orderkey (INT4)} - SCAN(19) on eb_0000000000000_0000_000002 - => out schema: {(1) default.b.l_orderkey (INT4)} - => in schema: {(1) default.b.l_orderkey (INT4)} +SCAN(5) on default.orders as d + => target list: default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4) + => out schema: {(2) default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4)} + => in schema: {(9) default.d.o_clerk (TEXT), default.d.o_comment (TEXT), default.d.o_custkey (INT4), default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4), default.d.o_orderpriority (TEXT), default.d.o_orderstatus (TEXT), default.d.o_shippriority (INT4), default.d.o_totalprice (FLOAT8)} ======================================================= -Block Id: eb_0000000000000_0000_000001 [LEAF] +Block Id: eb_0000000000000_0000_000007 [LEAF] ======================================================= [Outgoing] -[q_0000000000000_0000] 1 => 5 (type=HASH_SHUFFLE, key=default.a.c_custkey (INT4), num=32) +[q_0000000000000_0000] 7 => 8 (type=HASH_SHUFFLE, key=default.e.n_nationkey (INT4), num=32) -SCAN(0) on default.customer as a - => target list: default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4) - => out schema: {(3) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4)} - => in schema: {(8) default.a.c_acctbal (FLOAT8), default.a.c_address (TEXT), default.a.c_comment (TEXT), default.a.c_custkey (INT4), default.a.c_mktsegment (TEXT), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.a.c_phone (TEXT)} +SCAN(7) on default.nation as e + => target list: default.e.n_name (TEXT), default.e.n_nationkey (INT4) + => out schema: {(2) default.e.n_name (TEXT), default.e.n_nationkey (INT4)} + => in schema: {(4) default.e.n_comment (TEXT), default.e.n_name (TEXT), default.e.n_nationkey (INT4), default.e.n_regionkey (INT4)} ======================================================= Block Id: eb_0000000000000_0000_000005 [INTERMEDIATE] ======================================================= [Incoming] -[q_0000000000000_0000] 1 => 5 (type=HASH_SHUFFLE, key=default.a.c_custkey (INT4), num=32) -[q_0000000000000_0000] 4 => 5 (type=HASH_SHUFFLE, key=default.b.l_orderkey (INT4), num=32) +[q_0000000000000_0000] 3 => 5 (type=HASH_SHUFFLE, key=default.b.l_orderkey (INT4), num=32) +[q_0000000000000_0000] 4 => 5 (type=HASH_SHUFFLE, key=default.c.o_orderkey (INT4), num=32) [Outgoing] -[q_0000000000000_0000] 5 => 7 (type=HASH_SHUFFLE, key=default.a.c_custkey (INT4), num=32) +[q_0000000000000_0000] 5 => 9 (type=HASH_SHUFFLE, key=default.a.c_custkey (INT4), num=32) JOIN(14)(LEFT_OUTER) - => Join Cond: default.a.c_custkey (INT4) = default.b.l_orderkey (INT4) + => Join Cond: default.b.l_orderkey (INT4) = default.c.o_orderkey (INT4) => target list: default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT) => out schema: {(5) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT)} - => in schema: {(5) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT)} + => in schema: {(6) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT), default.c.o_orderkey (INT4)} SCAN(22) on eb_0000000000000_0000_000004 - => out schema: {(2) default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT)} - => in schema: {(2) default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT)} - SCAN(21) on eb_0000000000000_0000_000001 - => out schema: {(3) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4)} - => in schema: {(3) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4)} - -======================================================= -Block Id: eb_0000000000000_0000_000006 [LEAF] -======================================================= - -[Outgoing] -[q_0000000000000_0000] 6 => 7 (type=HASH_SHUFFLE, key=default.d.o_orderkey (INT4), num=32) - -SCAN(5) on default.orders as d - => target list: default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4) - => out schema: {(2) default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4)} - => in schema: {(9) default.d.o_clerk (TEXT), default.d.o_comment (TEXT), default.d.o_custkey (INT4), default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4), default.d.o_orderpriority (TEXT), default.d.o_orderstatus (TEXT), default.d.o_shippriority (INT4), default.d.o_totalprice (FLOAT8)} + => out schema: {(2) default.c.o_orderdate (TEXT), default.c.o_orderkey (INT4)} + => in schema: {(2) default.c.o_orderdate (TEXT), default.c.o_orderkey (INT4)} + SCAN(21) on eb_0000000000000_0000_000003 + => out schema: {(4) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4)} + => in schema: {(4) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4)} ======================================================= -Block Id: eb_0000000000000_0000_000007 [INTERMEDIATE] +Block Id: eb_0000000000000_0000_000008 [INTERMEDIATE] ======================================================= [Incoming] -[q_0000000000000_0000] 5 => 7 (type=HASH_SHUFFLE, key=default.a.c_custkey (INT4), num=32) -[q_0000000000000_0000] 6 => 7 (type=HASH_SHUFFLE, key=default.d.o_orderkey (INT4), num=32) +[q_0000000000000_0000] 6 => 8 (type=HASH_SHUFFLE, key=default.d.o_orderkey (INT4), num=32) +[q_0000000000000_0000] 7 => 8 (type=HASH_SHUFFLE, key=default.e.n_nationkey (INT4), num=32) [Outgoing] -[q_0000000000000_0000] 7 => 9 (type=HASH_SHUFFLE, key=default.d.o_orderkey (INT4), num=32) +[q_0000000000000_0000] 8 => 9 (type=HASH_SHUFFLE, key=default.d.o_orderkey (INT4), num=32) JOIN(15)(LEFT_OUTER) - => Join Cond: default.a.c_custkey (INT4) = default.d.o_orderkey (INT4) - => target list: default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT), default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4) - => out schema: {(7) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT), default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4)} - => in schema: {(7) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT), default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4)} - SCAN(24) on eb_0000000000000_0000_000006 + => Join Cond: default.d.o_orderkey (INT4) = default.e.n_nationkey (INT4) + => target list: default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4), default.e.n_name (TEXT) + => out schema: {(3) default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4), default.e.n_name (TEXT)} + => in schema: {(4) default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4), default.e.n_name (TEXT), default.e.n_nationkey (INT4)} + SCAN(24) on eb_0000000000000_0000_000007 + => out schema: {(2) default.e.n_name (TEXT), default.e.n_nationkey (INT4)} + => in schema: {(2) default.e.n_name (TEXT), default.e.n_nationkey (INT4)} + SCAN(23) on eb_0000000000000_0000_000006 => out schema: {(2) default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4)} => in schema: {(2) default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4)} - SCAN(23) on eb_0000000000000_0000_000005 - => out schema: {(5) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT)} - => in schema: {(5) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT)} - -======================================================= -Block Id: eb_0000000000000_0000_000008 [LEAF] -======================================================= - -[Outgoing] -[q_0000000000000_0000] 8 => 9 (type=HASH_SHUFFLE, key=default.e.n_nationkey (INT4), num=32) - -SCAN(7) on default.nation as e - => target list: default.e.n_name (TEXT), default.e.n_nationkey (INT4) - => out schema: {(2) default.e.n_name (TEXT), default.e.n_nationkey (INT4)} - => in schema: {(4) default.e.n_comment (TEXT), default.e.n_name (TEXT), default.e.n_nationkey (INT4), default.e.n_regionkey (INT4)} ======================================================= Block Id: eb_0000000000000_0000_000009 [INTERMEDIATE] ======================================================= [Incoming] -[q_0000000000000_0000] 7 => 9 (type=HASH_SHUFFLE, key=default.d.o_orderkey (INT4), num=32) -[q_0000000000000_0000] 8 => 9 (type=HASH_SHUFFLE, key=default.e.n_nationkey (INT4), num=32) +[q_0000000000000_0000] 5 => 9 (type=HASH_SHUFFLE, key=default.a.c_custkey (INT4), num=32) +[q_0000000000000_0000] 8 => 9 (type=HASH_SHUFFLE, key=default.d.o_orderkey (INT4), num=32) [Outgoing] [q_0000000000000_0000] 9 => 11 (type=HASH_SHUFFLE, key=default.d.o_orderkey (INT4), num=32) JOIN(16)(LEFT_OUTER) - => Join Cond: default.d.o_orderkey (INT4) = default.e.n_nationkey (INT4) + => Join Cond: default.a.c_custkey (INT4) = default.d.o_orderkey (INT4) => target list: default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT), default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4), default.e.n_name (TEXT) => out schema: {(8) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT), default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4), default.e.n_name (TEXT)} - => in schema: {(9) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT), default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4), default.e.n_name (TEXT), default.e.n_nationkey (INT4)} + => in schema: {(8) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT), default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4), default.e.n_name (TEXT)} SCAN(26) on eb_0000000000000_0000_000008 - => out schema: {(2) default.e.n_name (TEXT), default.e.n_nationkey (INT4)} - => in schema: {(2) default.e.n_name (TEXT), default.e.n_nationkey (INT4)} - SCAN(25) on eb_0000000000000_0000_000007 - => out schema: {(7) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT), default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4)} - => in schema: {(7) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT), default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4)} + => out schema: {(3) default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4), default.e.n_name (TEXT)} + => in schema: {(3) default.d.o_orderdate (TEXT), default.d.o_orderkey (INT4), default.e.n_name (TEXT)} + SCAN(25) on eb_0000000000000_0000_000005 + => out schema: {(5) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT)} + => in schema: {(5) default.a.c_custkey (INT4), default.a.c_name (TEXT), default.a.c_nationkey (INT4), default.b.l_orderkey (INT4), default.c.o_orderdate (TEXT)} ======================================================= Block Id: eb_0000000000000_0000_000010 [LEAF]
http://git-wip-us.apache.org/repos/asf/tajo/blob/0c9b6a6e/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr1.Hash.plan ---------------------------------------------------------------------- diff --git a/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr1.Hash.plan b/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr1.Hash.plan index fbfe7f8..93ee8ba 100644 --- a/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr1.Hash.plan +++ b/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr1.Hash.plan @@ -27,23 +27,52 @@ Execution Block Graph (TERMINAL - eb_0000000000000_0000_000005) |-eb_0000000000000_0000_000005 |-eb_0000000000000_0000_000004 |-eb_0000000000000_0000_000003 + |-eb_0000000000000_0000_000002 + |-eb_0000000000000_0000_000001 ------------------------------------------------------------------------------- Order of Execution ------------------------------------------------------------------------------- -1: eb_0000000000000_0000_000003 -2: eb_0000000000000_0000_000004 -3: eb_0000000000000_0000_000005 +1: eb_0000000000000_0000_000001 +2: eb_0000000000000_0000_000002 +3: eb_0000000000000_0000_000003 +4: eb_0000000000000_0000_000004 +5: eb_0000000000000_0000_000005 ------------------------------------------------------------------------------- ======================================================= -Block Id: eb_0000000000000_0000_000003 [LEAF] +Block Id: eb_0000000000000_0000_000001 [LEAF] ======================================================= [Outgoing] -[q_0000000000000_0000] 3 => 4 (type=RANGE_SHUFFLE, key=default.customer.c_custkey (INT4), default.orders.o_orderkey (INT4), num=32) +[q_0000000000000_0000] 1 => 3 (type=HASH_SHUFFLE, key=default.customer.c_custkey (INT4), num=32) -[Enforcers] - 0: type=Broadcast, tables=default.orders +SCAN(0) on default.customer + => target list: default.customer.c_custkey (INT4) + => out schema: {(1) default.customer.c_custkey (INT4)} + => in schema: {(8) default.customer.c_acctbal (FLOAT8), default.customer.c_address (TEXT), default.customer.c_comment (TEXT), default.customer.c_custkey (INT4), default.customer.c_mktsegment (TEXT), default.customer.c_name (TEXT), default.customer.c_nationkey (INT4), default.customer.c_phone (TEXT)} + +======================================================= +Block Id: eb_0000000000000_0000_000002 [LEAF] +======================================================= + +[Outgoing] +[q_0000000000000_0000] 2 => 3 (type=HASH_SHUFFLE, key=default.orders.o_orderkey (INT4), num=32) + +SCAN(1) on default.orders + => target list: default.orders.o_orderkey (INT4) + => out schema: {(1) default.orders.o_orderkey (INT4)} + => in schema: {(9) default.orders.o_clerk (TEXT), default.orders.o_comment (TEXT), default.orders.o_custkey (INT4), default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderpriority (TEXT), default.orders.o_orderstatus (TEXT), default.orders.o_shippriority (INT4), default.orders.o_totalprice (FLOAT8)} + +======================================================= +Block Id: eb_0000000000000_0000_000003 [INTERMEDIATE] +======================================================= + +[Incoming] +[q_0000000000000_0000] 1 => 3 (type=HASH_SHUFFLE, key=default.customer.c_custkey (INT4), num=32) +[q_0000000000000_0000] 2 => 3 (type=HASH_SHUFFLE, key=default.orders.o_orderkey (INT4), num=32) + +[Outgoing] +[q_0000000000000_0000] 3 => 4 (type=RANGE_SHUFFLE, key=default.customer.c_custkey (INT4), default.orders.o_orderkey (INT4), num=32) SORT(10) => Sort Keys: default.customer.c_custkey (INT4) (asc, nulls last),default.orders.o_orderkey (INT4) (asc, nulls last) @@ -52,14 +81,12 @@ SORT(10) => target list: default.customer.c_custkey (INT4), default.orders.o_orderkey (INT4) => out schema: {(2) default.customer.c_custkey (INT4), default.orders.o_orderkey (INT4)} => in schema: {(2) default.customer.c_custkey (INT4), default.orders.o_orderkey (INT4)} - SCAN(1) on default.orders - => target list: default.orders.o_orderkey (INT4) + SCAN(9) on eb_0000000000000_0000_000002 => out schema: {(1) default.orders.o_orderkey (INT4)} - => in schema: {(9) default.orders.o_clerk (TEXT), default.orders.o_comment (TEXT), default.orders.o_custkey (INT4), default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderpriority (TEXT), default.orders.o_orderstatus (TEXT), default.orders.o_shippriority (INT4), default.orders.o_totalprice (FLOAT8)} - SCAN(0) on default.customer - => target list: default.customer.c_custkey (INT4) + => in schema: {(1) default.orders.o_orderkey (INT4)} + SCAN(8) on eb_0000000000000_0000_000001 => out schema: {(1) default.customer.c_custkey (INT4)} - => in schema: {(8) default.customer.c_acctbal (FLOAT8), default.customer.c_address (TEXT), default.customer.c_comment (TEXT), default.customer.c_custkey (INT4), default.customer.c_mktsegment (TEXT), default.customer.c_name (TEXT), default.customer.c_nationkey (INT4), default.customer.c_phone (TEXT)} + => in schema: {(1) default.customer.c_custkey (INT4)} ======================================================= Block Id: eb_0000000000000_0000_000004 [ROOT] http://git-wip-us.apache.org/repos/asf/tajo/blob/0c9b6a6e/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr1.Sort.plan ---------------------------------------------------------------------- diff --git a/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr1.Sort.plan b/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr1.Sort.plan index fbfe7f8..93ee8ba 100644 --- a/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr1.Sort.plan +++ b/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr1.Sort.plan @@ -27,23 +27,52 @@ Execution Block Graph (TERMINAL - eb_0000000000000_0000_000005) |-eb_0000000000000_0000_000005 |-eb_0000000000000_0000_000004 |-eb_0000000000000_0000_000003 + |-eb_0000000000000_0000_000002 + |-eb_0000000000000_0000_000001 ------------------------------------------------------------------------------- Order of Execution ------------------------------------------------------------------------------- -1: eb_0000000000000_0000_000003 -2: eb_0000000000000_0000_000004 -3: eb_0000000000000_0000_000005 +1: eb_0000000000000_0000_000001 +2: eb_0000000000000_0000_000002 +3: eb_0000000000000_0000_000003 +4: eb_0000000000000_0000_000004 +5: eb_0000000000000_0000_000005 ------------------------------------------------------------------------------- ======================================================= -Block Id: eb_0000000000000_0000_000003 [LEAF] +Block Id: eb_0000000000000_0000_000001 [LEAF] ======================================================= [Outgoing] -[q_0000000000000_0000] 3 => 4 (type=RANGE_SHUFFLE, key=default.customer.c_custkey (INT4), default.orders.o_orderkey (INT4), num=32) +[q_0000000000000_0000] 1 => 3 (type=HASH_SHUFFLE, key=default.customer.c_custkey (INT4), num=32) -[Enforcers] - 0: type=Broadcast, tables=default.orders +SCAN(0) on default.customer + => target list: default.customer.c_custkey (INT4) + => out schema: {(1) default.customer.c_custkey (INT4)} + => in schema: {(8) default.customer.c_acctbal (FLOAT8), default.customer.c_address (TEXT), default.customer.c_comment (TEXT), default.customer.c_custkey (INT4), default.customer.c_mktsegment (TEXT), default.customer.c_name (TEXT), default.customer.c_nationkey (INT4), default.customer.c_phone (TEXT)} + +======================================================= +Block Id: eb_0000000000000_0000_000002 [LEAF] +======================================================= + +[Outgoing] +[q_0000000000000_0000] 2 => 3 (type=HASH_SHUFFLE, key=default.orders.o_orderkey (INT4), num=32) + +SCAN(1) on default.orders + => target list: default.orders.o_orderkey (INT4) + => out schema: {(1) default.orders.o_orderkey (INT4)} + => in schema: {(9) default.orders.o_clerk (TEXT), default.orders.o_comment (TEXT), default.orders.o_custkey (INT4), default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderpriority (TEXT), default.orders.o_orderstatus (TEXT), default.orders.o_shippriority (INT4), default.orders.o_totalprice (FLOAT8)} + +======================================================= +Block Id: eb_0000000000000_0000_000003 [INTERMEDIATE] +======================================================= + +[Incoming] +[q_0000000000000_0000] 1 => 3 (type=HASH_SHUFFLE, key=default.customer.c_custkey (INT4), num=32) +[q_0000000000000_0000] 2 => 3 (type=HASH_SHUFFLE, key=default.orders.o_orderkey (INT4), num=32) + +[Outgoing] +[q_0000000000000_0000] 3 => 4 (type=RANGE_SHUFFLE, key=default.customer.c_custkey (INT4), default.orders.o_orderkey (INT4), num=32) SORT(10) => Sort Keys: default.customer.c_custkey (INT4) (asc, nulls last),default.orders.o_orderkey (INT4) (asc, nulls last) @@ -52,14 +81,12 @@ SORT(10) => target list: default.customer.c_custkey (INT4), default.orders.o_orderkey (INT4) => out schema: {(2) default.customer.c_custkey (INT4), default.orders.o_orderkey (INT4)} => in schema: {(2) default.customer.c_custkey (INT4), default.orders.o_orderkey (INT4)} - SCAN(1) on default.orders - => target list: default.orders.o_orderkey (INT4) + SCAN(9) on eb_0000000000000_0000_000002 => out schema: {(1) default.orders.o_orderkey (INT4)} - => in schema: {(9) default.orders.o_clerk (TEXT), default.orders.o_comment (TEXT), default.orders.o_custkey (INT4), default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderpriority (TEXT), default.orders.o_orderstatus (TEXT), default.orders.o_shippriority (INT4), default.orders.o_totalprice (FLOAT8)} - SCAN(0) on default.customer - => target list: default.customer.c_custkey (INT4) + => in schema: {(1) default.orders.o_orderkey (INT4)} + SCAN(8) on eb_0000000000000_0000_000001 => out schema: {(1) default.customer.c_custkey (INT4)} - => in schema: {(8) default.customer.c_acctbal (FLOAT8), default.customer.c_address (TEXT), default.customer.c_comment (TEXT), default.customer.c_custkey (INT4), default.customer.c_mktsegment (TEXT), default.customer.c_name (TEXT), default.customer.c_nationkey (INT4), default.customer.c_phone (TEXT)} + => in schema: {(1) default.customer.c_custkey (INT4)} ======================================================= Block Id: eb_0000000000000_0000_000004 [ROOT] http://git-wip-us.apache.org/repos/asf/tajo/blob/0c9b6a6e/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr4.Hash.plan ---------------------------------------------------------------------- diff --git a/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr4.Hash.plan b/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr4.Hash.plan index a0c32f7..5a5f04a 100644 --- a/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr4.Hash.plan +++ b/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr4.Hash.plan @@ -25,19 +25,49 @@ Execution Block Graph (TERMINAL - eb_0000000000000_0000_000004) ------------------------------------------------------------------------------- |-eb_0000000000000_0000_000004 |-eb_0000000000000_0000_000003 + |-eb_0000000000000_0000_000002 + |-eb_0000000000000_0000_000001 ------------------------------------------------------------------------------- Order of Execution ------------------------------------------------------------------------------- -1: eb_0000000000000_0000_000003 -2: eb_0000000000000_0000_000004 +1: eb_0000000000000_0000_000001 +2: eb_0000000000000_0000_000002 +3: eb_0000000000000_0000_000003 +4: eb_0000000000000_0000_000004 ------------------------------------------------------------------------------- ======================================================= +Block Id: eb_0000000000000_0000_000001 [LEAF] +======================================================= + +[Outgoing] +[q_0000000000000_0000] 1 => 3 (type=HASH_SHUFFLE, key=default.l.l_orderkey (INT4), num=32) + +SCAN(0) on default.lineitem as l + => target list: default.l.l_orderkey (INT4) + => out schema: {(1) default.l.l_orderkey (INT4)} + => in schema: {(16) default.l.l_comment (TEXT), default.l.l_commitdate (TEXT), default.l.l_discount (FLOAT8), default.l.l_extendedprice (FLOAT8), default.l.l_linenumber (INT4), default.l.l_linestatus (TEXT), default.l.l_orderkey (INT4), default.l.l_partkey (INT4), default.l.l_quantity (FLOAT8), default.l.l_receiptdate (TEXT), default.l.l_returnflag (TEXT), default.l.l_shipdate (TEXT), default.l.l_shipinstruct (TEXT), default.l.l_shipmode (TEXT), default.l.l_suppkey (INT4), default.l.l_tax (FLOAT8)} + +======================================================= +Block Id: eb_0000000000000_0000_000002 [LEAF] +======================================================= + +[Outgoing] +[q_0000000000000_0000] 2 => 3 (type=HASH_SHUFFLE, key=default.o.o_orderkey (INT4), num=32) + +SCAN(1) on default.orders as o + => filter: default.o.o_orderpriority (TEXT) = 5-LOW + => target list: default.o.o_orderkey (INT4) + => out schema: {(1) default.o.o_orderkey (INT4)} + => in schema: {(9) default.o.o_clerk (TEXT), default.o.o_comment (TEXT), default.o.o_custkey (INT4), default.o.o_orderdate (TEXT), default.o.o_orderkey (INT4), default.o.o_orderpriority (TEXT), default.o.o_orderstatus (TEXT), default.o.o_shippriority (INT4), default.o.o_totalprice (FLOAT8)} + +======================================================= Block Id: eb_0000000000000_0000_000003 [ROOT] ======================================================= -[Enforcers] - 0: type=Broadcast, tables=default.o +[Incoming] +[q_0000000000000_0000] 1 => 3 (type=HASH_SHUFFLE, key=default.l.l_orderkey (INT4), num=32) +[q_0000000000000_0000] 2 => 3 (type=HASH_SHUFFLE, key=default.o.o_orderkey (INT4), num=32) PROJECTION(3) => Targets: default.l.l_orderkey (INT4), default.o.o_orderkey (INT4), 201405 as key1, 5-LOW as key2 @@ -48,15 +78,12 @@ PROJECTION(3) => target list: default.l.l_orderkey (INT4), default.o.o_orderkey (INT4) => out schema: {(2) default.l.l_orderkey (INT4), default.o.o_orderkey (INT4)} => in schema: {(2) default.l.l_orderkey (INT4), default.o.o_orderkey (INT4)} - SCAN(1) on default.orders as o - => filter: default.o.o_orderpriority (TEXT) = 5-LOW - => target list: default.o.o_orderkey (INT4) + SCAN(8) on eb_0000000000000_0000_000002 => out schema: {(1) default.o.o_orderkey (INT4)} - => in schema: {(9) default.o.o_clerk (TEXT), default.o.o_comment (TEXT), default.o.o_custkey (INT4), default.o.o_orderdate (TEXT), default.o.o_orderkey (INT4), default.o.o_orderpriority (TEXT), default.o.o_orderstatus (TEXT), default.o.o_shippriority (INT4), default.o.o_totalprice (FLOAT8)} - SCAN(0) on default.lineitem as l - => target list: default.l.l_orderkey (INT4) + => in schema: {(1) default.o.o_orderkey (INT4)} + SCAN(7) on eb_0000000000000_0000_000001 => out schema: {(1) default.l.l_orderkey (INT4)} - => in schema: {(16) default.l.l_comment (TEXT), default.l.l_commitdate (TEXT), default.l.l_discount (FLOAT8), default.l.l_extendedprice (FLOAT8), default.l.l_linenumber (INT4), default.l.l_linestatus (TEXT), default.l.l_orderkey (INT4), default.l.l_partkey (INT4), default.l.l_quantity (FLOAT8), default.l.l_receiptdate (TEXT), default.l.l_returnflag (TEXT), default.l.l_shipdate (TEXT), default.l.l_shipinstruct (TEXT), default.l.l_shipmode (TEXT), default.l.l_suppkey (INT4), default.l.l_tax (FLOAT8)} + => in schema: {(1) default.l.l_orderkey (INT4)} ======================================================= Block Id: eb_0000000000000_0000_000004 [TERMINAL] http://git-wip-us.apache.org/repos/asf/tajo/blob/0c9b6a6e/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr4.Sort.plan ---------------------------------------------------------------------- diff --git a/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr4.Sort.plan b/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr4.Sort.plan index a0c32f7..5a5f04a 100644 --- a/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr4.Sort.plan +++ b/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr4.Sort.plan @@ -25,19 +25,49 @@ Execution Block Graph (TERMINAL - eb_0000000000000_0000_000004) ------------------------------------------------------------------------------- |-eb_0000000000000_0000_000004 |-eb_0000000000000_0000_000003 + |-eb_0000000000000_0000_000002 + |-eb_0000000000000_0000_000001 ------------------------------------------------------------------------------- Order of Execution ------------------------------------------------------------------------------- -1: eb_0000000000000_0000_000003 -2: eb_0000000000000_0000_000004 +1: eb_0000000000000_0000_000001 +2: eb_0000000000000_0000_000002 +3: eb_0000000000000_0000_000003 +4: eb_0000000000000_0000_000004 ------------------------------------------------------------------------------- ======================================================= +Block Id: eb_0000000000000_0000_000001 [LEAF] +======================================================= + +[Outgoing] +[q_0000000000000_0000] 1 => 3 (type=HASH_SHUFFLE, key=default.l.l_orderkey (INT4), num=32) + +SCAN(0) on default.lineitem as l + => target list: default.l.l_orderkey (INT4) + => out schema: {(1) default.l.l_orderkey (INT4)} + => in schema: {(16) default.l.l_comment (TEXT), default.l.l_commitdate (TEXT), default.l.l_discount (FLOAT8), default.l.l_extendedprice (FLOAT8), default.l.l_linenumber (INT4), default.l.l_linestatus (TEXT), default.l.l_orderkey (INT4), default.l.l_partkey (INT4), default.l.l_quantity (FLOAT8), default.l.l_receiptdate (TEXT), default.l.l_returnflag (TEXT), default.l.l_shipdate (TEXT), default.l.l_shipinstruct (TEXT), default.l.l_shipmode (TEXT), default.l.l_suppkey (INT4), default.l.l_tax (FLOAT8)} + +======================================================= +Block Id: eb_0000000000000_0000_000002 [LEAF] +======================================================= + +[Outgoing] +[q_0000000000000_0000] 2 => 3 (type=HASH_SHUFFLE, key=default.o.o_orderkey (INT4), num=32) + +SCAN(1) on default.orders as o + => filter: default.o.o_orderpriority (TEXT) = 5-LOW + => target list: default.o.o_orderkey (INT4) + => out schema: {(1) default.o.o_orderkey (INT4)} + => in schema: {(9) default.o.o_clerk (TEXT), default.o.o_comment (TEXT), default.o.o_custkey (INT4), default.o.o_orderdate (TEXT), default.o.o_orderkey (INT4), default.o.o_orderpriority (TEXT), default.o.o_orderstatus (TEXT), default.o.o_shippriority (INT4), default.o.o_totalprice (FLOAT8)} + +======================================================= Block Id: eb_0000000000000_0000_000003 [ROOT] ======================================================= -[Enforcers] - 0: type=Broadcast, tables=default.o +[Incoming] +[q_0000000000000_0000] 1 => 3 (type=HASH_SHUFFLE, key=default.l.l_orderkey (INT4), num=32) +[q_0000000000000_0000] 2 => 3 (type=HASH_SHUFFLE, key=default.o.o_orderkey (INT4), num=32) PROJECTION(3) => Targets: default.l.l_orderkey (INT4), default.o.o_orderkey (INT4), 201405 as key1, 5-LOW as key2 @@ -48,15 +78,12 @@ PROJECTION(3) => target list: default.l.l_orderkey (INT4), default.o.o_orderkey (INT4) => out schema: {(2) default.l.l_orderkey (INT4), default.o.o_orderkey (INT4)} => in schema: {(2) default.l.l_orderkey (INT4), default.o.o_orderkey (INT4)} - SCAN(1) on default.orders as o - => filter: default.o.o_orderpriority (TEXT) = 5-LOW - => target list: default.o.o_orderkey (INT4) + SCAN(8) on eb_0000000000000_0000_000002 => out schema: {(1) default.o.o_orderkey (INT4)} - => in schema: {(9) default.o.o_clerk (TEXT), default.o.o_comment (TEXT), default.o.o_custkey (INT4), default.o.o_orderdate (TEXT), default.o.o_orderkey (INT4), default.o.o_orderpriority (TEXT), default.o.o_orderstatus (TEXT), default.o.o_shippriority (INT4), default.o.o_totalprice (FLOAT8)} - SCAN(0) on default.lineitem as l - => target list: default.l.l_orderkey (INT4) + => in schema: {(1) default.o.o_orderkey (INT4)} + SCAN(7) on eb_0000000000000_0000_000001 => out schema: {(1) default.l.l_orderkey (INT4)} - => in schema: {(16) default.l.l_comment (TEXT), default.l.l_commitdate (TEXT), default.l.l_discount (FLOAT8), default.l.l_extendedprice (FLOAT8), default.l.l_linenumber (INT4), default.l.l_linestatus (TEXT), default.l.l_orderkey (INT4), default.l.l_partkey (INT4), default.l.l_quantity (FLOAT8), default.l.l_receiptdate (TEXT), default.l.l_returnflag (TEXT), default.l.l_shipdate (TEXT), default.l.l_shipinstruct (TEXT), default.l.l_shipmode (TEXT), default.l.l_suppkey (INT4), default.l.l_tax (FLOAT8)} + => in schema: {(1) default.l.l_orderkey (INT4)} ======================================================= Block Id: eb_0000000000000_0000_000004 [TERMINAL] http://git-wip-us.apache.org/repos/asf/tajo/blob/0c9b6a6e/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr5.Hash.plan ---------------------------------------------------------------------- diff --git a/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr5.Hash.plan b/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr5.Hash.plan index 22a5037..0bd853a 100644 --- a/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr5.Hash.plan +++ b/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr5.Hash.plan @@ -26,19 +26,48 @@ Execution Block Graph (TERMINAL - eb_0000000000000_0000_000004) ------------------------------------------------------------------------------- |-eb_0000000000000_0000_000004 |-eb_0000000000000_0000_000003 + |-eb_0000000000000_0000_000002 + |-eb_0000000000000_0000_000001 ------------------------------------------------------------------------------- Order of Execution ------------------------------------------------------------------------------- -1: eb_0000000000000_0000_000003 -2: eb_0000000000000_0000_000004 +1: eb_0000000000000_0000_000001 +2: eb_0000000000000_0000_000002 +3: eb_0000000000000_0000_000003 +4: eb_0000000000000_0000_000004 ------------------------------------------------------------------------------- ======================================================= +Block Id: eb_0000000000000_0000_000001 [LEAF] +======================================================= + +[Outgoing] +[q_0000000000000_0000] 1 => 3 (type=HASH_SHUFFLE, key=default.l.l_orderkey (INT4), num=32) + +SCAN(0) on default.lineitem as l + => target list: default.l.l_orderkey (INT4) + => out schema: {(1) default.l.l_orderkey (INT4)} + => in schema: {(16) default.l.l_comment (TEXT), default.l.l_commitdate (TEXT), default.l.l_discount (FLOAT8), default.l.l_extendedprice (FLOAT8), default.l.l_linenumber (INT4), default.l.l_linestatus (TEXT), default.l.l_orderkey (INT4), default.l.l_partkey (INT4), default.l.l_quantity (FLOAT8), default.l.l_receiptdate (TEXT), default.l.l_returnflag (TEXT), default.l.l_shipdate (TEXT), default.l.l_shipinstruct (TEXT), default.l.l_shipmode (TEXT), default.l.l_suppkey (INT4), default.l.l_tax (FLOAT8)} + +======================================================= +Block Id: eb_0000000000000_0000_000002 [LEAF] +======================================================= + +[Outgoing] +[q_0000000000000_0000] 2 => 3 (type=HASH_SHUFFLE, key=default.o.o_orderkey (INT4), num=32) + +SCAN(1) on default.orders as o + => target list: default.o.o_orderkey (INT4), default.o.o_orderpriority (TEXT) + => out schema: {(2) default.o.o_orderkey (INT4), default.o.o_orderpriority (TEXT)} + => in schema: {(9) default.o.o_clerk (TEXT), default.o.o_comment (TEXT), default.o.o_custkey (INT4), default.o.o_orderdate (TEXT), default.o.o_orderkey (INT4), default.o.o_orderpriority (TEXT), default.o.o_orderstatus (TEXT), default.o.o_shippriority (INT4), default.o.o_totalprice (FLOAT8)} + +======================================================= Block Id: eb_0000000000000_0000_000003 [ROOT] ======================================================= -[Enforcers] - 0: type=Broadcast, tables=default.o +[Incoming] +[q_0000000000000_0000] 1 => 3 (type=HASH_SHUFFLE, key=default.l.l_orderkey (INT4), num=32) +[q_0000000000000_0000] 2 => 3 (type=HASH_SHUFFLE, key=default.o.o_orderkey (INT4), num=32) PROJECTION(4) => Targets: default.l.l_orderkey (INT4), default.o.o_orderkey (INT4), 201405 as key1, 5-LOW as key2 @@ -51,14 +80,12 @@ PROJECTION(4) => target list: default.l.l_orderkey (INT4), default.o.o_orderkey (INT4), default.o.o_orderpriority (TEXT) => out schema: {(3) default.l.l_orderkey (INT4), default.o.o_orderkey (INT4), default.o.o_orderpriority (TEXT)} => in schema: {(3) default.l.l_orderkey (INT4), default.o.o_orderkey (INT4), default.o.o_orderpriority (TEXT)} - SCAN(1) on default.orders as o - => target list: default.o.o_orderkey (INT4), default.o.o_orderpriority (TEXT) + SCAN(9) on eb_0000000000000_0000_000002 => out schema: {(2) default.o.o_orderkey (INT4), default.o.o_orderpriority (TEXT)} - => in schema: {(9) default.o.o_clerk (TEXT), default.o.o_comment (TEXT), default.o.o_custkey (INT4), default.o.o_orderdate (TEXT), default.o.o_orderkey (INT4), default.o.o_orderpriority (TEXT), default.o.o_orderstatus (TEXT), default.o.o_shippriority (INT4), default.o.o_totalprice (FLOAT8)} - SCAN(0) on default.lineitem as l - => target list: default.l.l_orderkey (INT4) + => in schema: {(2) default.o.o_orderkey (INT4), default.o.o_orderpriority (TEXT)} + SCAN(8) on eb_0000000000000_0000_000001 => out schema: {(1) default.l.l_orderkey (INT4)} - => in schema: {(16) default.l.l_comment (TEXT), default.l.l_commitdate (TEXT), default.l.l_discount (FLOAT8), default.l.l_extendedprice (FLOAT8), default.l.l_linenumber (INT4), default.l.l_linestatus (TEXT), default.l.l_orderkey (INT4), default.l.l_partkey (INT4), default.l.l_quantity (FLOAT8), default.l.l_receiptdate (TEXT), default.l.l_returnflag (TEXT), default.l.l_shipdate (TEXT), default.l.l_shipinstruct (TEXT), default.l.l_shipmode (TEXT), default.l.l_suppkey (INT4), default.l.l_tax (FLOAT8)} + => in schema: {(1) default.l.l_orderkey (INT4)} ======================================================= Block Id: eb_0000000000000_0000_000004 [TERMINAL] http://git-wip-us.apache.org/repos/asf/tajo/blob/0c9b6a6e/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr5.Sort.plan ---------------------------------------------------------------------- diff --git a/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr5.Sort.plan b/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr5.Sort.plan index 22a5037..0bd853a 100644 --- a/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr5.Sort.plan +++ b/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithConstantExpr5.Sort.plan @@ -26,19 +26,48 @@ Execution Block Graph (TERMINAL - eb_0000000000000_0000_000004) ------------------------------------------------------------------------------- |-eb_0000000000000_0000_000004 |-eb_0000000000000_0000_000003 + |-eb_0000000000000_0000_000002 + |-eb_0000000000000_0000_000001 ------------------------------------------------------------------------------- Order of Execution ------------------------------------------------------------------------------- -1: eb_0000000000000_0000_000003 -2: eb_0000000000000_0000_000004 +1: eb_0000000000000_0000_000001 +2: eb_0000000000000_0000_000002 +3: eb_0000000000000_0000_000003 +4: eb_0000000000000_0000_000004 ------------------------------------------------------------------------------- ======================================================= +Block Id: eb_0000000000000_0000_000001 [LEAF] +======================================================= + +[Outgoing] +[q_0000000000000_0000] 1 => 3 (type=HASH_SHUFFLE, key=default.l.l_orderkey (INT4), num=32) + +SCAN(0) on default.lineitem as l + => target list: default.l.l_orderkey (INT4) + => out schema: {(1) default.l.l_orderkey (INT4)} + => in schema: {(16) default.l.l_comment (TEXT), default.l.l_commitdate (TEXT), default.l.l_discount (FLOAT8), default.l.l_extendedprice (FLOAT8), default.l.l_linenumber (INT4), default.l.l_linestatus (TEXT), default.l.l_orderkey (INT4), default.l.l_partkey (INT4), default.l.l_quantity (FLOAT8), default.l.l_receiptdate (TEXT), default.l.l_returnflag (TEXT), default.l.l_shipdate (TEXT), default.l.l_shipinstruct (TEXT), default.l.l_shipmode (TEXT), default.l.l_suppkey (INT4), default.l.l_tax (FLOAT8)} + +======================================================= +Block Id: eb_0000000000000_0000_000002 [LEAF] +======================================================= + +[Outgoing] +[q_0000000000000_0000] 2 => 3 (type=HASH_SHUFFLE, key=default.o.o_orderkey (INT4), num=32) + +SCAN(1) on default.orders as o + => target list: default.o.o_orderkey (INT4), default.o.o_orderpriority (TEXT) + => out schema: {(2) default.o.o_orderkey (INT4), default.o.o_orderpriority (TEXT)} + => in schema: {(9) default.o.o_clerk (TEXT), default.o.o_comment (TEXT), default.o.o_custkey (INT4), default.o.o_orderdate (TEXT), default.o.o_orderkey (INT4), default.o.o_orderpriority (TEXT), default.o.o_orderstatus (TEXT), default.o.o_shippriority (INT4), default.o.o_totalprice (FLOAT8)} + +======================================================= Block Id: eb_0000000000000_0000_000003 [ROOT] ======================================================= -[Enforcers] - 0: type=Broadcast, tables=default.o +[Incoming] +[q_0000000000000_0000] 1 => 3 (type=HASH_SHUFFLE, key=default.l.l_orderkey (INT4), num=32) +[q_0000000000000_0000] 2 => 3 (type=HASH_SHUFFLE, key=default.o.o_orderkey (INT4), num=32) PROJECTION(4) => Targets: default.l.l_orderkey (INT4), default.o.o_orderkey (INT4), 201405 as key1, 5-LOW as key2 @@ -51,14 +80,12 @@ PROJECTION(4) => target list: default.l.l_orderkey (INT4), default.o.o_orderkey (INT4), default.o.o_orderpriority (TEXT) => out schema: {(3) default.l.l_orderkey (INT4), default.o.o_orderkey (INT4), default.o.o_orderpriority (TEXT)} => in schema: {(3) default.l.l_orderkey (INT4), default.o.o_orderkey (INT4), default.o.o_orderpriority (TEXT)} - SCAN(1) on default.orders as o - => target list: default.o.o_orderkey (INT4), default.o.o_orderpriority (TEXT) + SCAN(9) on eb_0000000000000_0000_000002 => out schema: {(2) default.o.o_orderkey (INT4), default.o.o_orderpriority (TEXT)} - => in schema: {(9) default.o.o_clerk (TEXT), default.o.o_comment (TEXT), default.o.o_custkey (INT4), default.o.o_orderdate (TEXT), default.o.o_orderkey (INT4), default.o.o_orderpriority (TEXT), default.o.o_orderstatus (TEXT), default.o.o_shippriority (INT4), default.o.o_totalprice (FLOAT8)} - SCAN(0) on default.lineitem as l - => target list: default.l.l_orderkey (INT4) + => in schema: {(2) default.o.o_orderkey (INT4), default.o.o_orderpriority (TEXT)} + SCAN(8) on eb_0000000000000_0000_000001 => out schema: {(1) default.l.l_orderkey (INT4)} - => in schema: {(16) default.l.l_comment (TEXT), default.l.l_commitdate (TEXT), default.l.l_discount (FLOAT8), default.l.l_extendedprice (FLOAT8), default.l.l_linenumber (INT4), default.l.l_linestatus (TEXT), default.l.l_orderkey (INT4), default.l.l_partkey (INT4), default.l.l_quantity (FLOAT8), default.l.l_receiptdate (TEXT), default.l.l_returnflag (TEXT), default.l.l_shipdate (TEXT), default.l.l_shipinstruct (TEXT), default.l.l_shipmode (TEXT), default.l.l_suppkey (INT4), default.l.l_tax (FLOAT8)} + => in schema: {(1) default.l.l_orderkey (INT4)} ======================================================= Block Id: eb_0000000000000_0000_000004 [TERMINAL] http://git-wip-us.apache.org/repos/asf/tajo/blob/0c9b6a6e/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithEmptyTable4.Hash.plan ---------------------------------------------------------------------- diff --git a/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithEmptyTable4.Hash.plan b/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithEmptyTable4.Hash.plan index 9b2aeeb..56023bc 100644 --- a/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithEmptyTable4.Hash.plan +++ b/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithEmptyTable4.Hash.plan @@ -55,25 +55,54 @@ Execution Block Graph (TERMINAL - eb_0000000000000_0000_000009) |-eb_0000000000000_0000_000007 |-eb_0000000000000_0000_000004 |-eb_0000000000000_0000_000003 + |-eb_0000000000000_0000_000002 + |-eb_0000000000000_0000_000001 ------------------------------------------------------------------------------- Order of Execution ------------------------------------------------------------------------------- -1: eb_0000000000000_0000_000003 -2: eb_0000000000000_0000_000007 -3: eb_0000000000000_0000_000004 -4: eb_0000000000000_0000_000008 -5: eb_0000000000000_0000_000009 +1: eb_0000000000000_0000_000001 +2: eb_0000000000000_0000_000002 +3: eb_0000000000000_0000_000003 +4: eb_0000000000000_0000_000007 +5: eb_0000000000000_0000_000004 +6: eb_0000000000000_0000_000008 +7: eb_0000000000000_0000_000009 ------------------------------------------------------------------------------- ======================================================= -Block Id: eb_0000000000000_0000_000003 [LEAF] +Block Id: eb_0000000000000_0000_000001 [LEAF] ======================================================= [Outgoing] -[q_0000000000000_0000] 3 => 4 (type=HASH_SHUFFLE, key=, num=1) +[q_0000000000000_0000] 1 => 3 (type=HASH_SHUFFLE, key=default.customer.c_custkey (INT4), num=32) -[Enforcers] - 0: type=Broadcast, tables=default.orders +SCAN(0) on default.customer + => target list: default.customer.c_custkey (INT4) + => out schema: {(1) default.customer.c_custkey (INT4)} + => in schema: {(8) default.customer.c_acctbal (FLOAT8), default.customer.c_address (TEXT), default.customer.c_comment (TEXT), default.customer.c_custkey (INT4), default.customer.c_mktsegment (TEXT), default.customer.c_name (TEXT), default.customer.c_nationkey (INT4), default.customer.c_phone (TEXT)} + +======================================================= +Block Id: eb_0000000000000_0000_000002 [LEAF] +======================================================= + +[Outgoing] +[q_0000000000000_0000] 2 => 3 (type=HASH_SHUFFLE, key=default.orders.o_orderkey (INT4), num=32) + +SCAN(1) on default.orders + => target list: default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT) + => out schema: {(3) default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT)} + => in schema: {(9) default.orders.o_clerk (TEXT), default.orders.o_comment (TEXT), default.orders.o_custkey (INT4), default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderpriority (TEXT), default.orders.o_orderstatus (TEXT), default.orders.o_shippriority (INT4), default.orders.o_totalprice (FLOAT8)} + +======================================================= +Block Id: eb_0000000000000_0000_000003 [INTERMEDIATE] +======================================================= + +[Incoming] +[q_0000000000000_0000] 1 => 3 (type=HASH_SHUFFLE, key=default.customer.c_custkey (INT4), num=32) +[q_0000000000000_0000] 2 => 3 (type=HASH_SHUFFLE, key=default.orders.o_orderkey (INT4), num=32) + +[Outgoing] +[q_0000000000000_0000] 3 => 4 (type=HASH_SHUFFLE, key=, num=1) GROUP_BY(17)() => exprs: (max(default.customer.c_custkey (INT4)),sum(default.orders.o_orderkey (INT4)),max(default.orders.o_orderstatus (TEXT)),max(default.orders.o_orderdate (TEXT))) @@ -85,14 +114,12 @@ GROUP_BY(17)() => target list: default.customer.c_custkey (INT4), default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT) => out schema: {(4) default.customer.c_custkey (INT4), default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT)} => in schema: {(4) default.customer.c_custkey (INT4), default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT)} - SCAN(1) on default.orders - => target list: default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT) + SCAN(16) on eb_0000000000000_0000_000002 => out schema: {(3) default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT)} - => in schema: {(9) default.orders.o_clerk (TEXT), default.orders.o_comment (TEXT), default.orders.o_custkey (INT4), default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderpriority (TEXT), default.orders.o_orderstatus (TEXT), default.orders.o_shippriority (INT4), default.orders.o_totalprice (FLOAT8)} - SCAN(0) on default.customer - => target list: default.customer.c_custkey (INT4) + => in schema: {(3) default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT)} + SCAN(15) on eb_0000000000000_0000_000001 => out schema: {(1) default.customer.c_custkey (INT4)} - => in schema: {(8) default.customer.c_acctbal (FLOAT8), default.customer.c_address (TEXT), default.customer.c_comment (TEXT), default.customer.c_custkey (INT4), default.customer.c_mktsegment (TEXT), default.customer.c_name (TEXT), default.customer.c_nationkey (INT4), default.customer.c_phone (TEXT)} + => in schema: {(1) default.customer.c_custkey (INT4)} ======================================================= Block Id: eb_0000000000000_0000_000007 [LEAF] http://git-wip-us.apache.org/repos/asf/tajo/blob/0c9b6a6e/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithEmptyTable4.Sort.plan ---------------------------------------------------------------------- diff --git a/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithEmptyTable4.Sort.plan b/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithEmptyTable4.Sort.plan index 9b2aeeb..56023bc 100644 --- a/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithEmptyTable4.Sort.plan +++ b/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithEmptyTable4.Sort.plan @@ -55,25 +55,54 @@ Execution Block Graph (TERMINAL - eb_0000000000000_0000_000009) |-eb_0000000000000_0000_000007 |-eb_0000000000000_0000_000004 |-eb_0000000000000_0000_000003 + |-eb_0000000000000_0000_000002 + |-eb_0000000000000_0000_000001 ------------------------------------------------------------------------------- Order of Execution ------------------------------------------------------------------------------- -1: eb_0000000000000_0000_000003 -2: eb_0000000000000_0000_000007 -3: eb_0000000000000_0000_000004 -4: eb_0000000000000_0000_000008 -5: eb_0000000000000_0000_000009 +1: eb_0000000000000_0000_000001 +2: eb_0000000000000_0000_000002 +3: eb_0000000000000_0000_000003 +4: eb_0000000000000_0000_000007 +5: eb_0000000000000_0000_000004 +6: eb_0000000000000_0000_000008 +7: eb_0000000000000_0000_000009 ------------------------------------------------------------------------------- ======================================================= -Block Id: eb_0000000000000_0000_000003 [LEAF] +Block Id: eb_0000000000000_0000_000001 [LEAF] ======================================================= [Outgoing] -[q_0000000000000_0000] 3 => 4 (type=HASH_SHUFFLE, key=, num=1) +[q_0000000000000_0000] 1 => 3 (type=HASH_SHUFFLE, key=default.customer.c_custkey (INT4), num=32) -[Enforcers] - 0: type=Broadcast, tables=default.orders +SCAN(0) on default.customer + => target list: default.customer.c_custkey (INT4) + => out schema: {(1) default.customer.c_custkey (INT4)} + => in schema: {(8) default.customer.c_acctbal (FLOAT8), default.customer.c_address (TEXT), default.customer.c_comment (TEXT), default.customer.c_custkey (INT4), default.customer.c_mktsegment (TEXT), default.customer.c_name (TEXT), default.customer.c_nationkey (INT4), default.customer.c_phone (TEXT)} + +======================================================= +Block Id: eb_0000000000000_0000_000002 [LEAF] +======================================================= + +[Outgoing] +[q_0000000000000_0000] 2 => 3 (type=HASH_SHUFFLE, key=default.orders.o_orderkey (INT4), num=32) + +SCAN(1) on default.orders + => target list: default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT) + => out schema: {(3) default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT)} + => in schema: {(9) default.orders.o_clerk (TEXT), default.orders.o_comment (TEXT), default.orders.o_custkey (INT4), default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderpriority (TEXT), default.orders.o_orderstatus (TEXT), default.orders.o_shippriority (INT4), default.orders.o_totalprice (FLOAT8)} + +======================================================= +Block Id: eb_0000000000000_0000_000003 [INTERMEDIATE] +======================================================= + +[Incoming] +[q_0000000000000_0000] 1 => 3 (type=HASH_SHUFFLE, key=default.customer.c_custkey (INT4), num=32) +[q_0000000000000_0000] 2 => 3 (type=HASH_SHUFFLE, key=default.orders.o_orderkey (INT4), num=32) + +[Outgoing] +[q_0000000000000_0000] 3 => 4 (type=HASH_SHUFFLE, key=, num=1) GROUP_BY(17)() => exprs: (max(default.customer.c_custkey (INT4)),sum(default.orders.o_orderkey (INT4)),max(default.orders.o_orderstatus (TEXT)),max(default.orders.o_orderdate (TEXT))) @@ -85,14 +114,12 @@ GROUP_BY(17)() => target list: default.customer.c_custkey (INT4), default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT) => out schema: {(4) default.customer.c_custkey (INT4), default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT)} => in schema: {(4) default.customer.c_custkey (INT4), default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT)} - SCAN(1) on default.orders - => target list: default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT) + SCAN(16) on eb_0000000000000_0000_000002 => out schema: {(3) default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT)} - => in schema: {(9) default.orders.o_clerk (TEXT), default.orders.o_comment (TEXT), default.orders.o_custkey (INT4), default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderpriority (TEXT), default.orders.o_orderstatus (TEXT), default.orders.o_shippriority (INT4), default.orders.o_totalprice (FLOAT8)} - SCAN(0) on default.customer - => target list: default.customer.c_custkey (INT4) + => in schema: {(3) default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT)} + SCAN(15) on eb_0000000000000_0000_000001 => out schema: {(1) default.customer.c_custkey (INT4)} - => in schema: {(8) default.customer.c_acctbal (FLOAT8), default.customer.c_address (TEXT), default.customer.c_comment (TEXT), default.customer.c_custkey (INT4), default.customer.c_mktsegment (TEXT), default.customer.c_name (TEXT), default.customer.c_nationkey (INT4), default.customer.c_phone (TEXT)} + => in schema: {(1) default.customer.c_custkey (INT4)} ======================================================= Block Id: eb_0000000000000_0000_000007 [LEAF] http://git-wip-us.apache.org/repos/asf/tajo/blob/0c9b6a6e/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithNull1.Hash.plan ---------------------------------------------------------------------- diff --git a/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithNull1.Hash.plan b/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithNull1.Hash.plan index 074245f..2ce8bed 100644 --- a/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithNull1.Hash.plan +++ b/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithNull1.Hash.plan @@ -25,23 +25,52 @@ Execution Block Graph (TERMINAL - eb_0000000000000_0000_000005) |-eb_0000000000000_0000_000005 |-eb_0000000000000_0000_000004 |-eb_0000000000000_0000_000003 + |-eb_0000000000000_0000_000002 + |-eb_0000000000000_0000_000001 ------------------------------------------------------------------------------- Order of Execution ------------------------------------------------------------------------------- -1: eb_0000000000000_0000_000003 -2: eb_0000000000000_0000_000004 -3: eb_0000000000000_0000_000005 +1: eb_0000000000000_0000_000001 +2: eb_0000000000000_0000_000002 +3: eb_0000000000000_0000_000003 +4: eb_0000000000000_0000_000004 +5: eb_0000000000000_0000_000005 ------------------------------------------------------------------------------- ======================================================= -Block Id: eb_0000000000000_0000_000003 [LEAF] +Block Id: eb_0000000000000_0000_000001 [LEAF] ======================================================= [Outgoing] -[q_0000000000000_0000] 3 => 4 (type=RANGE_SHUFFLE, key=default.customer.c_custkey (INT4), default.orders.o_orderkey (INT4), num=32) +[q_0000000000000_0000] 1 => 3 (type=HASH_SHUFFLE, key=default.customer.c_custkey (INT4), num=32) -[Enforcers] - 0: type=Broadcast, tables=default.orders +SCAN(0) on default.customer + => target list: default.customer.c_custkey (INT4) + => out schema: {(1) default.customer.c_custkey (INT4)} + => in schema: {(8) default.customer.c_acctbal (FLOAT8), default.customer.c_address (TEXT), default.customer.c_comment (TEXT), default.customer.c_custkey (INT4), default.customer.c_mktsegment (TEXT), default.customer.c_name (TEXT), default.customer.c_nationkey (INT4), default.customer.c_phone (TEXT)} + +======================================================= +Block Id: eb_0000000000000_0000_000002 [LEAF] +======================================================= + +[Outgoing] +[q_0000000000000_0000] 2 => 3 (type=HASH_SHUFFLE, key=default.orders.o_orderkey (INT4), num=32) + +SCAN(1) on default.orders + => target list: default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT) + => out schema: {(3) default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT)} + => in schema: {(9) default.orders.o_clerk (TEXT), default.orders.o_comment (TEXT), default.orders.o_custkey (INT4), default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderpriority (TEXT), default.orders.o_orderstatus (TEXT), default.orders.o_shippriority (INT4), default.orders.o_totalprice (FLOAT8)} + +======================================================= +Block Id: eb_0000000000000_0000_000003 [INTERMEDIATE] +======================================================= + +[Incoming] +[q_0000000000000_0000] 1 => 3 (type=HASH_SHUFFLE, key=default.customer.c_custkey (INT4), num=32) +[q_0000000000000_0000] 2 => 3 (type=HASH_SHUFFLE, key=default.orders.o_orderkey (INT4), num=32) + +[Outgoing] +[q_0000000000000_0000] 3 => 4 (type=RANGE_SHUFFLE, key=default.customer.c_custkey (INT4), default.orders.o_orderkey (INT4), num=32) SORT(11) => Sort Keys: default.customer.c_custkey (INT4) (asc, nulls last),default.orders.o_orderkey (INT4) (asc, nulls last) @@ -52,14 +81,12 @@ SORT(11) => target list: default.customer.c_custkey (INT4), default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), coalesce(default.orders.o_orderstatus (TEXT),N/A) as ?coalesce => out schema: {(4) ?coalesce (TEXT), default.customer.c_custkey (INT4), default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4)} => in schema: {(4) default.customer.c_custkey (INT4), default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT)} - SCAN(1) on default.orders - => target list: default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT) + SCAN(10) on eb_0000000000000_0000_000002 => out schema: {(3) default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT)} - => in schema: {(9) default.orders.o_clerk (TEXT), default.orders.o_comment (TEXT), default.orders.o_custkey (INT4), default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderpriority (TEXT), default.orders.o_orderstatus (TEXT), default.orders.o_shippriority (INT4), default.orders.o_totalprice (FLOAT8)} - SCAN(0) on default.customer - => target list: default.customer.c_custkey (INT4) + => in schema: {(3) default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT)} + SCAN(9) on eb_0000000000000_0000_000001 => out schema: {(1) default.customer.c_custkey (INT4)} - => in schema: {(8) default.customer.c_acctbal (FLOAT8), default.customer.c_address (TEXT), default.customer.c_comment (TEXT), default.customer.c_custkey (INT4), default.customer.c_mktsegment (TEXT), default.customer.c_name (TEXT), default.customer.c_nationkey (INT4), default.customer.c_phone (TEXT)} + => in schema: {(1) default.customer.c_custkey (INT4)} ======================================================= Block Id: eb_0000000000000_0000_000004 [ROOT] http://git-wip-us.apache.org/repos/asf/tajo/blob/0c9b6a6e/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithNull1.Sort.plan ---------------------------------------------------------------------- diff --git a/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithNull1.Sort.plan b/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithNull1.Sort.plan index 074245f..2ce8bed 100644 --- a/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithNull1.Sort.plan +++ b/tajo-core-tests/src/test/resources/results/TestOuterJoinQuery/testLeftOuterJoinWithNull1.Sort.plan @@ -25,23 +25,52 @@ Execution Block Graph (TERMINAL - eb_0000000000000_0000_000005) |-eb_0000000000000_0000_000005 |-eb_0000000000000_0000_000004 |-eb_0000000000000_0000_000003 + |-eb_0000000000000_0000_000002 + |-eb_0000000000000_0000_000001 ------------------------------------------------------------------------------- Order of Execution ------------------------------------------------------------------------------- -1: eb_0000000000000_0000_000003 -2: eb_0000000000000_0000_000004 -3: eb_0000000000000_0000_000005 +1: eb_0000000000000_0000_000001 +2: eb_0000000000000_0000_000002 +3: eb_0000000000000_0000_000003 +4: eb_0000000000000_0000_000004 +5: eb_0000000000000_0000_000005 ------------------------------------------------------------------------------- ======================================================= -Block Id: eb_0000000000000_0000_000003 [LEAF] +Block Id: eb_0000000000000_0000_000001 [LEAF] ======================================================= [Outgoing] -[q_0000000000000_0000] 3 => 4 (type=RANGE_SHUFFLE, key=default.customer.c_custkey (INT4), default.orders.o_orderkey (INT4), num=32) +[q_0000000000000_0000] 1 => 3 (type=HASH_SHUFFLE, key=default.customer.c_custkey (INT4), num=32) -[Enforcers] - 0: type=Broadcast, tables=default.orders +SCAN(0) on default.customer + => target list: default.customer.c_custkey (INT4) + => out schema: {(1) default.customer.c_custkey (INT4)} + => in schema: {(8) default.customer.c_acctbal (FLOAT8), default.customer.c_address (TEXT), default.customer.c_comment (TEXT), default.customer.c_custkey (INT4), default.customer.c_mktsegment (TEXT), default.customer.c_name (TEXT), default.customer.c_nationkey (INT4), default.customer.c_phone (TEXT)} + +======================================================= +Block Id: eb_0000000000000_0000_000002 [LEAF] +======================================================= + +[Outgoing] +[q_0000000000000_0000] 2 => 3 (type=HASH_SHUFFLE, key=default.orders.o_orderkey (INT4), num=32) + +SCAN(1) on default.orders + => target list: default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT) + => out schema: {(3) default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT)} + => in schema: {(9) default.orders.o_clerk (TEXT), default.orders.o_comment (TEXT), default.orders.o_custkey (INT4), default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderpriority (TEXT), default.orders.o_orderstatus (TEXT), default.orders.o_shippriority (INT4), default.orders.o_totalprice (FLOAT8)} + +======================================================= +Block Id: eb_0000000000000_0000_000003 [INTERMEDIATE] +======================================================= + +[Incoming] +[q_0000000000000_0000] 1 => 3 (type=HASH_SHUFFLE, key=default.customer.c_custkey (INT4), num=32) +[q_0000000000000_0000] 2 => 3 (type=HASH_SHUFFLE, key=default.orders.o_orderkey (INT4), num=32) + +[Outgoing] +[q_0000000000000_0000] 3 => 4 (type=RANGE_SHUFFLE, key=default.customer.c_custkey (INT4), default.orders.o_orderkey (INT4), num=32) SORT(11) => Sort Keys: default.customer.c_custkey (INT4) (asc, nulls last),default.orders.o_orderkey (INT4) (asc, nulls last) @@ -52,14 +81,12 @@ SORT(11) => target list: default.customer.c_custkey (INT4), default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), coalesce(default.orders.o_orderstatus (TEXT),N/A) as ?coalesce => out schema: {(4) ?coalesce (TEXT), default.customer.c_custkey (INT4), default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4)} => in schema: {(4) default.customer.c_custkey (INT4), default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT)} - SCAN(1) on default.orders - => target list: default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT) + SCAN(10) on eb_0000000000000_0000_000002 => out schema: {(3) default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT)} - => in schema: {(9) default.orders.o_clerk (TEXT), default.orders.o_comment (TEXT), default.orders.o_custkey (INT4), default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderpriority (TEXT), default.orders.o_orderstatus (TEXT), default.orders.o_shippriority (INT4), default.orders.o_totalprice (FLOAT8)} - SCAN(0) on default.customer - => target list: default.customer.c_custkey (INT4) + => in schema: {(3) default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderstatus (TEXT)} + SCAN(9) on eb_0000000000000_0000_000001 => out schema: {(1) default.customer.c_custkey (INT4)} - => in schema: {(8) default.customer.c_acctbal (FLOAT8), default.customer.c_address (TEXT), default.customer.c_comment (TEXT), default.customer.c_custkey (INT4), default.customer.c_mktsegment (TEXT), default.customer.c_name (TEXT), default.customer.c_nationkey (INT4), default.customer.c_phone (TEXT)} + => in schema: {(1) default.customer.c_custkey (INT4)} ======================================================= Block Id: eb_0000000000000_0000_000004 [ROOT]
