http://git-wip-us.apache.org/repos/asf/asterixdb/blob/d906bd89/asterixdb/asterix-app/src/test/resources/optimizerts/results/fj-dblp-csx-hybrid.plan
----------------------------------------------------------------------
diff --git
a/asterixdb/asterix-app/src/test/resources/optimizerts/results/fj-dblp-csx-hybrid.plan
b/asterixdb/asterix-app/src/test/resources/optimizerts/results/fj-dblp-csx-hybrid.plan
new file mode 100644
index 0000000..6365a34
--- /dev/null
+++
b/asterixdb/asterix-app/src/test/resources/optimizerts/results/fj-dblp-csx-hybrid.plan
@@ -0,0 +1,613 @@
+-- DISTRIBUTE_RESULT |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- STREAM_PROJECT |PARTITIONED|
+ -- ASSIGN |PARTITIONED|
+ -- STREAM_PROJECT |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- HYBRID_HASH_JOIN [$$49, $$50, $$51][$$idLeft_0, $$idLeft_1,
$$idLeft_2] |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- STREAM_PROJECT |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- HYBRID_HASH_JOIN [$$49, $$50, $$51][$$idLeft_0,
$$idLeft_1, $$idLeft_2] |PARTITIONED|
+ -- HASH_PARTITION_EXCHANGE [$$49, $$50, $$51]
|PARTITIONED|
+ -- STREAM_PROJECT |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- NESTED_LOOP |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- STREAM_PROJECT |PARTITIONED|
+ -- ASSIGN |PARTITIONED|
+ -- STREAM_PROJECT |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- NESTED_LOOP |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- STREAM_PROJECT |PARTITIONED|
+ -- ASSIGN |PARTITIONED|
+ -- STREAM_PROJECT
|PARTITIONED|
+ -- ASSIGN |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+ -- DATASOURCE_SCAN
|PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+ --
EMPTY_TUPLE_SOURCE |PARTITIONED|
+ -- BROADCAST_EXCHANGE |PARTITIONED|
+ -- ASSIGN |PARTITIONED|
+ -- STREAM_PROJECT |PARTITIONED|
+ -- ASSIGN |PARTITIONED|
+ -- STREAM_PROJECT
|PARTITIONED|
+ -- ASSIGN |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+ -- REPLICATE
|PARTITIONED|
+ --
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- STREAM_PROJECT
|PARTITIONED|
+ -- ASSIGN
|PARTITIONED|
+ --
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ --
DATASOURCE_SCAN |PARTITIONED|
+ --
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ --
EMPTY_TUPLE_SOURCE |PARTITIONED|
+ -- BROADCAST_EXCHANGE |PARTITIONED|
+ -- STREAM_PROJECT |PARTITIONED|
+ -- ASSIGN |PARTITIONED|
+ -- STREAM_PROJECT |PARTITIONED|
+ -- ASSIGN |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- REPLICATE |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+ -- DATASOURCE_SCAN |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+ -- EMPTY_TUPLE_SOURCE
|PARTITIONED|
+ -- HASH_PARTITION_EXCHANGE [$$idLeft_0, $$idLeft_1,
$$idLeft_2] |PARTITIONED|
+ -- STREAM_PROJECT |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- HYBRID_HASH_JOIN [$$52][$$idRight_0]
|PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- STREAM_PROJECT |PARTITIONED|
+ -- ASSIGN |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- DATASOURCE_SCAN |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- EMPTY_TUPLE_SOURCE |PARTITIONED|
+ -- HASH_PARTITION_EXCHANGE [$$idRight_0]
|PARTITIONED|
+ -- EXTERNAL_GROUP_BY[$$331, $$329, $$330,
$$327] |PARTITIONED|
+ {
+ -- AGGREGATE |LOCAL|
+ -- NESTED_TUPLE_SOURCE |LOCAL|
+ }
+ -- HASH_PARTITION_EXCHANGE [$$331, $$329,
$$330, $$327] |PARTITIONED|
+ -- STREAM_PROJECT |PARTITIONED|
+ -- STREAM_SELECT |PARTITIONED|
+ -- STREAM_PROJECT |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- HYBRID_HASH_JOIN
[$$prefixTokenRight][$$prefixTokenLeft] |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+ -- STREAM_PROJECT
|PARTITIONED|
+ -- ASSIGN |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+ -- REPLICATE
|PARTITIONED|
+ --
HASH_PARTITION_EXCHANGE [$$201] |PARTITIONED|
+ -- UNNEST
|PARTITIONED|
+ --
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ --
PRE_CLUSTERED_GROUP_BY[$$194] |PARTITIONED|
+ {
+ --
AGGREGATE |LOCAL|
+ --
STREAM_SELECT |LOCAL|
+ --
NESTED_TUPLE_SOURCE |LOCAL|
+ }
+ --
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ --
STABLE_SORT [$$194(ASC), $$210(ASC)] |PARTITIONED|
+ --
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ --
STREAM_PROJECT |PARTITIONED|
+ --
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ --
HYBRID_HASH_JOIN [$$211][$$214] |PARTITIONED|
+ --
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- UNNEST |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- REPLICATE |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- DATASOURCE_SCAN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- EMPTY_TUPLE_SOURCE |PARTITIONED|
+ --
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- REPLICATE |PARTITIONED|
+
-- BROADCAST_EXCHANGE |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- RUNNING_AGGREGATE |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- SORT_MERGE_EXCHANGE [$$363(ASC), $$244(ASC) ] |PARTITIONED|
+
-- STABLE_SORT [$$363(ASC), $$244(ASC)] |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- EXTERNAL_GROUP_BY[$$395] |PARTITIONED|
+
{
+
-- AGGREGATE |LOCAL|
+
-- NESTED_TUPLE_SOURCE |LOCAL|
+
}
+
-- HASH_PARTITION_EXCHANGE [$$395] |PARTITIONED|
+
-- EXTERNAL_GROUP_BY[$$246] |PARTITIONED|
+
{
+
-- AGGREGATE |LOCAL|
+
-- NESTED_TUPLE_SOURCE |LOCAL|
+
}
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- UNNEST |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- REPLICATE |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+
-- DATASOURCE_SCAN
|PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+
-- EMPTY_TUPLE_SOURCE
|PARTITIONED|
+ -- HASH_PARTITION_EXCHANGE
[$$prefixTokenLeft] |PARTITIONED|
+ -- STREAM_PROJECT
|PARTITIONED|
+ -- UNNEST |PARTITIONED|
+ -- ASSIGN |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+ --
PRE_CLUSTERED_GROUP_BY[$$81, $$84, $$76] |PARTITIONED|
+ {
+ -- AGGREGATE
|LOCAL|
+ --
STREAM_SELECT |LOCAL|
+ --
NESTED_TUPLE_SOURCE |LOCAL|
+ }
+ --
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- STABLE_SORT
[$$81(ASC), $$84(ASC), $$76(ASC), $$i(ASC)] |PARTITIONED|
+ --
HASH_PARTITION_EXCHANGE [$$81, $$84, $$76] |PARTITIONED|
+ --
STREAM_PROJECT |PARTITIONED|
+ --
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ --
HYBRID_HASH_JOIN [$$token][$$tokenGroupped] |PARTITIONED|
+ --
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ --
NESTED_LOOP |PARTITIONED|
+ --
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ --
NESTED_LOOP |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- REPLICATE |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- UNNEST |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- DATASOURCE_SCAN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- EMPTY_TUPLE_SOURCE |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- REPLICATE |PARTITIONED|
+
-- BROADCAST_EXCHANGE |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- REPLICATE |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- DATASOURCE_SCAN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- EMPTY_TUPLE_SOURCE |PARTITIONED|
+ --
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ --
STREAM_PROJECT |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- REPLICATE |PARTITIONED|
+
-- BROADCAST_EXCHANGE |PARTITIONED|
+
-- REPLICATE |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- REPLICATE |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- DATASOURCE_SCAN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- EMPTY_TUPLE_SOURCE |PARTITIONED|
+ --
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ --
STREAM_PROJECT |PARTITIONED|
+ --
ASSIGN |PARTITIONED|
+ --
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- REPLICATE |PARTITIONED|
+
-- BROADCAST_EXCHANGE |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- RUNNING_AGGREGATE |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- SORT_MERGE_EXCHANGE [$$363(ASC), $$244(ASC) ] |PARTITIONED|
+
-- STABLE_SORT [$$363(ASC), $$244(ASC)] |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- EXTERNAL_GROUP_BY[$$395] |PARTITIONED|
+
{
+
-- AGGREGATE |LOCAL|
+
-- NESTED_TUPLE_SOURCE |LOCAL|
+
}
+
-- HASH_PARTITION_EXCHANGE [$$395] |PARTITIONED|
+
-- EXTERNAL_GROUP_BY[$$246] |PARTITIONED|
+
{
+
-- AGGREGATE |LOCAL|
+
-- NESTED_TUPLE_SOURCE |LOCAL|
+
}
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- UNNEST |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- REPLICATE |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- DATASOURCE_SCAN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+
-- EMPTY_TUPLE_SOURCE
|PARTITIONED|
+ -- HASH_PARTITION_EXCHANGE [$$idLeft_0, $$idLeft_1, $$idLeft_2]
|PARTITIONED|
+ -- STREAM_PROJECT |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- HYBRID_HASH_JOIN [$$53][$$idRight_0] |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- STREAM_PROJECT |PARTITIONED|
+ -- ASSIGN |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- REPLICATE |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- STREAM_PROJECT |PARTITIONED|
+ -- ASSIGN |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- REPLICATE |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- DATASOURCE_SCAN |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+ -- EMPTY_TUPLE_SOURCE
|PARTITIONED|
+ -- HASH_PARTITION_EXCHANGE [$$idRight_0] |PARTITIONED|
+ -- EXTERNAL_GROUP_BY[$$341, $$344, $$347, $$333]
|PARTITIONED|
+ {
+ -- AGGREGATE |LOCAL|
+ -- NESTED_TUPLE_SOURCE |LOCAL|
+ }
+ -- HASH_PARTITION_EXCHANGE [$$341, $$344, $$347,
$$333] |PARTITIONED|
+ -- STREAM_PROJECT |PARTITIONED|
+ -- STREAM_SELECT |PARTITIONED|
+ -- STREAM_PROJECT |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- HYBRID_HASH_JOIN
[$$prefixTokenRight][$$prefixTokenLeft] |PARTITIONED|
+ -- HASH_PARTITION_EXCHANGE
[$$prefixTokenRight] |PARTITIONED|
+ -- UNNEST |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- PRE_CLUSTERED_GROUP_BY[$$259]
|PARTITIONED|
+ {
+ -- AGGREGATE |LOCAL|
+ -- STREAM_SELECT
|LOCAL|
+ --
NESTED_TUPLE_SOURCE |LOCAL|
+ }
+ -- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+ -- STABLE_SORT [$$259(ASC),
$$i(ASC)] |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+ -- STREAM_PROJECT
|PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+ -- HYBRID_HASH_JOIN
[$$token][$$tokenGroupped] |PARTITIONED|
+ --
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- UNNEST
|PARTITIONED|
+ --
STREAM_PROJECT |PARTITIONED|
+ -- ASSIGN
|PARTITIONED|
+ --
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ --
DATASOURCE_SCAN |PARTITIONED|
+ --
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ --
EMPTY_TUPLE_SOURCE |PARTITIONED|
+ --
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- STREAM_PROJECT
|PARTITIONED|
+ -- ASSIGN
|PARTITIONED|
+ --
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- REPLICATE
|PARTITIONED|
+ --
BROADCAST_EXCHANGE |PARTITIONED|
+ --
ASSIGN |PARTITIONED|
+ --
RUNNING_AGGREGATE |PARTITIONED|
+ --
STREAM_PROJECT |PARTITIONED|
+ --
SORT_MERGE_EXCHANGE [$$364(ASC), $$tokenGroupped(ASC) ] |PARTITIONED|
+
-- STABLE_SORT [$$364(ASC), $$tokenGroupped(ASC)] |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- EXTERNAL_GROUP_BY[$$397] |PARTITIONED|
+
{
+
-- AGGREGATE |LOCAL|
+
-- NESTED_TUPLE_SOURCE |LOCAL|
+
}
+
-- HASH_PARTITION_EXCHANGE [$$397] |PARTITIONED|
+
-- EXTERNAL_GROUP_BY[$$token] |PARTITIONED|
+
{
+
-- AGGREGATE |LOCAL|
+
-- NESTED_TUPLE_SOURCE |LOCAL|
+
}
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- UNNEST |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- REPLICATE |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- DATASOURCE_SCAN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- EMPTY_TUPLE_SOURCE |PARTITIONED|
+ -- HASH_PARTITION_EXCHANGE
[$$prefixTokenLeft] |PARTITIONED|
+ -- STREAM_PROJECT |PARTITIONED|
+ -- UNNEST |PARTITIONED|
+ -- ASSIGN |PARTITIONED|
+ -- STREAM_PROJECT |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+ --
PRE_CLUSTERED_GROUP_BY[$$166, $$167, $$184, $$168, $$169, $$185, $$170, $$171]
|PARTITIONED|
+ {
+ -- AGGREGATE
|LOCAL|
+ -- STREAM_SELECT
|LOCAL|
+ --
NESTED_TUPLE_SOURCE |LOCAL|
+ }
+ -- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+ -- STABLE_SORT
[$$166(ASC), $$167(ASC), $$184(ASC), $$168(ASC), $$169(ASC), $$185(ASC),
$$170(ASC), $$171(ASC), $$i(ASC)] |PARTITIONED|
+ -- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+ -- STREAM_PROJECT
|PARTITIONED|
+ --
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ --
HYBRID_HASH_JOIN [$$token][$$tokenGroupped] |PARTITIONED|
+ --
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ --
STREAM_PROJECT |PARTITIONED|
+ -- UNNEST
|PARTITIONED|
+ --
ASSIGN |PARTITIONED|
+ --
STREAM_PROJECT |PARTITIONED|
+ --
ASSIGN |PARTITIONED|
+ --
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- HYBRID_HASH_JOIN [$$166, $$168, $$170][$$167, $$169, $$171] |PARTITIONED|
+
-- HASH_PARTITION_EXCHANGE [$$166, $$168, $$170] |PARTITIONED|
+
-- NESTED_LOOP |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- NESTED_LOOP |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- DATASOURCE_SCAN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- EMPTY_TUPLE_SOURCE |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- REPLICATE |PARTITIONED|
+
-- BROADCAST_EXCHANGE |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- REPLICATE |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- DATASOURCE_SCAN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- EMPTY_TUPLE_SOURCE |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- REPLICATE |PARTITIONED|
+
-- BROADCAST_EXCHANGE |PARTITIONED|
+
-- REPLICATE |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- REPLICATE |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- DATASOURCE_SCAN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- EMPTY_TUPLE_SOURCE |PARTITIONED|
+
-- HASH_PARTITION_EXCHANGE [$$167, $$169, $$171] |PARTITIONED|
+
-- HYBRID_HASH_JOIN [$$184][$$185] |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- DATASOURCE_SCAN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- EMPTY_TUPLE_SOURCE |PARTITIONED|
+
-- HASH_PARTITION_EXCHANGE [$$185] |PARTITIONED|
+
-- EXTERNAL_GROUP_BY[$$339, $$337, $$338, $$335] |PARTITIONED|
+
{
+
-- AGGREGATE |LOCAL|
+
-- NESTED_TUPLE_SOURCE |LOCAL|
+
}
+
-- HASH_PARTITION_EXCHANGE [$$339, $$337, $$338, $$335] |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- STREAM_SELECT |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- HYBRID_HASH_JOIN [$$201][$$200] |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- REPLICATE |PARTITIONED|
+
-- HASH_PARTITION_EXCHANGE [$$201] |PARTITIONED|
+
-- UNNEST |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- PRE_CLUSTERED_GROUP_BY[$$194] |PARTITIONED|
+
{
+
-- AGGREGATE |LOCAL|
+
-- STREAM_SELECT |LOCAL|
+
-- NESTED_TUPLE_SOURCE |LOCAL|
+
}
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- STABLE_SORT [$$194(ASC), $$210(ASC)]
|PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- HYBRID_HASH_JOIN [$$211][$$214]
|PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+
-- UNNEST |PARTITIONED|
+
-- STREAM_PROJECT
|PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+
-- REPLICATE
|PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+
-- STREAM_PROJECT
|PARTITIONED|
+
-- ASSIGN
|PARTITIONED|
+
--
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
--
DATASOURCE_SCAN |PARTITIONED|
+
--
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
--
EMPTY_TUPLE_SOURCE |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+
-- REPLICATE |PARTITIONED|
+
-- BROADCAST_EXCHANGE
|PARTITIONED|
+
-- ASSIGN
|PARTITIONED|
+
-- RUNNING_AGGREGATE
|PARTITIONED|
+
-- STREAM_PROJECT
|PARTITIONED|
+
--
SORT_MERGE_EXCHANGE [$$363(ASC), $$244(ASC) ] |PARTITIONED|
+
-- STABLE_SORT
[$$363(ASC), $$244(ASC)] |PARTITIONED|
+
--
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
--
EXTERNAL_GROUP_BY[$$395] |PARTITIONED|
+
{
+
-- AGGREGATE |LOCAL|
+
-- NESTED_TUPLE_SOURCE |LOCAL|
+
}
+
--
HASH_PARTITION_EXCHANGE [$$395] |PARTITIONED|
+
--
EXTERNAL_GROUP_BY[$$246] |PARTITIONED|
+
{
+
-- AGGREGATE |LOCAL|
+
-- NESTED_TUPLE_SOURCE |LOCAL|
+
}
+
--
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
--
STREAM_PROJECT |PARTITIONED|
+
-- UNNEST |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- REPLICATE |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- DATASOURCE_SCAN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- EMPTY_TUPLE_SOURCE |PARTITIONED|
+
-- HASH_PARTITION_EXCHANGE [$$200] |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- UNNEST |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- PRE_CLUSTERED_GROUP_BY[$$192, $$193, $$191]
|PARTITIONED|
+
{
+
-- AGGREGATE |LOCAL|
+
-- STREAM_SELECT |LOCAL|
+
-- NESTED_TUPLE_SOURCE |LOCAL|
+
}
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- STABLE_SORT [$$192(ASC), $$193(ASC),
$$191(ASC), $$240(ASC)] |PARTITIONED|
+
-- HASH_PARTITION_EXCHANGE [$$192, $$193,
$$191] |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- HYBRID_HASH_JOIN [$$241][$$244]
|PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+
-- NESTED_LOOP |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+
-- NESTED_LOOP |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+
-- REPLICATE
|PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+
-- UNNEST
|PARTITIONED|
+
-- STREAM_PROJECT
|PARTITIONED|
+
-- ASSIGN
|PARTITIONED|
+
--
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
--
DATASOURCE_SCAN |PARTITIONED|
+
--
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
--
EMPTY_TUPLE_SOURCE |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+
-- REPLICATE
|PARTITIONED|
+
-- BROADCAST_EXCHANGE
|PARTITIONED|
+
-- STREAM_PROJECT
|PARTITIONED|
+
-- ASSIGN
|PARTITIONED|
+
--
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- REPLICATE
|PARTITIONED|
+
--
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
--
DATASOURCE_SCAN |PARTITIONED|
+
--
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
--
EMPTY_TUPLE_SOURCE |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+
-- REPLICATE |PARTITIONED|
+
-- BROADCAST_EXCHANGE
|PARTITIONED|
+
-- REPLICATE
|PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+
-- STREAM_PROJECT
|PARTITIONED|
+
-- ASSIGN
|PARTITIONED|
+
--
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- REPLICATE
|PARTITIONED|
+
--
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
--
DATASOURCE_SCAN |PARTITIONED|
+
--
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
--
EMPTY_TUPLE_SOURCE |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE
|PARTITIONED|
+
-- REPLICATE |PARTITIONED|
+
-- BROADCAST_EXCHANGE
|PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- RUNNING_AGGREGATE
|PARTITIONED|
+
-- STREAM_PROJECT
|PARTITIONED|
+
-- SORT_MERGE_EXCHANGE
[$$363(ASC), $$244(ASC) ] |PARTITIONED|
+
-- STABLE_SORT
[$$363(ASC), $$244(ASC)] |PARTITIONED|
+
--
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
--
EXTERNAL_GROUP_BY[$$395] |PARTITIONED|
+
{
+
--
AGGREGATE |LOCAL|
+
--
NESTED_TUPLE_SOURCE |LOCAL|
+
}
+
--
HASH_PARTITION_EXCHANGE [$$395] |PARTITIONED|
+
--
EXTERNAL_GROUP_BY[$$246] |PARTITIONED|
+
{
+
--
AGGREGATE |LOCAL|
+
-- NESTED_TUPLE_SOURCE |LOCAL|
+
}
+
--
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
--
STREAM_PROJECT |PARTITIONED|
+
--
UNNEST |PARTITIONED|
+
--
STREAM_PROJECT |PARTITIONED|
+
--
ASSIGN |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- REPLICATE |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- DATASOURCE_SCAN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- EMPTY_TUPLE_SOURCE |PARTITIONED|
+ --
ONE_TO_ONE_EXCHANGE |PARTITIONED|
+ -- REPLICATE
|PARTITIONED|
+ --
BROADCAST_EXCHANGE |PARTITIONED|
+ --
ASSIGN |PARTITIONED|
+ --
RUNNING_AGGREGATE |PARTITIONED|
+ --
STREAM_PROJECT |PARTITIONED|
+ --
SORT_MERGE_EXCHANGE [$$364(ASC), $$tokenGroupped(ASC) ] |PARTITIONED|
+
-- STABLE_SORT [$$364(ASC), $$tokenGroupped(ASC)] |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- EXTERNAL_GROUP_BY[$$397] |PARTITIONED|
+
{
+
-- AGGREGATE |LOCAL|
+
-- NESTED_TUPLE_SOURCE |LOCAL|
+
}
+
-- HASH_PARTITION_EXCHANGE [$$397] |PARTITIONED|
+
-- EXTERNAL_GROUP_BY[$$token] |PARTITIONED|
+
{
+
-- AGGREGATE |LOCAL|
+
-- NESTED_TUPLE_SOURCE |LOCAL|
+
}
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- UNNEST |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ASSIGN |PARTITIONED|
+
-- STREAM_PROJECT |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- REPLICATE |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- DATASOURCE_SCAN |PARTITIONED|
+
-- ONE_TO_ONE_EXCHANGE |PARTITIONED|
+
-- EMPTY_TUPLE_SOURCE |PARTITIONED|