# Join with tiny build side.
# Uses smallest possible buffers but two max-size buffers are required.
select straight_join *
from tpch_parquet.customer
    inner join tpch_parquet.nation on c_nationkey = n_nationkey
---- DISTRIBUTEDPLAN
Max Per-Host Resource Reservation: Memory=33.97MB Threads=5
Per-Host Resource Estimates: Memory=68MB
Analyzed query: SELECT /* +straight_join */ * FROM tpch_parquet.customer INNER
JOIN tpch_parquet.nation ON c_nationkey = n_nationkey

F02:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1
|  Per-Host Resources: mem-estimate=10.33MB mem-reservation=0B thread-reservation=1
PLAN-ROOT SINK
|  output exprs: tpch_parquet.customer.c_custkey, tpch_parquet.customer.c_name, tpch_parquet.customer.c_address, tpch_parquet.customer.c_nationkey, tpch_parquet.customer.c_phone, tpch_parquet.customer.c_acctbal, tpch_parquet.customer.c_mktsegment, tpch_parquet.customer.c_comment, tpch_parquet.nation.n_nationkey, tpch_parquet.nation.n_name, tpch_parquet.nation.n_regionkey, tpch_parquet.nation.n_comment
|  mem-estimate=0B mem-reservation=0B thread-reservation=0
|
04:EXCHANGE [UNPARTITIONED]
|  mem-estimate=10.33MB mem-reservation=0B thread-reservation=0
|  tuple-ids=0,1 row-size=327B cardinality=150.00K
|  in pipelines: 00(GETNEXT)
|
F00:PLAN FRAGMENT [RANDOM] hosts=1 instances=1
Per-Host Resources: mem-estimate=41.95MB mem-reservation=33.94MB thread-reservation=2 runtime-filters-memory=1.00MB
02:HASH JOIN [INNER JOIN, BROADCAST]
|  hash predicates: c_nationkey = n_nationkey
|  fk/pk conjuncts: c_nationkey = n_nationkey
|  runtime filters: RF000[bloom] <- n_nationkey
|  mem-estimate=16.94MB mem-reservation=16.94MB spill-buffer=64.00KB thread-reservation=0
|  tuple-ids=0,1 row-size=327B cardinality=150.00K
|  in pipelines: 00(GETNEXT), 01(OPEN)
|
|--03:EXCHANGE [BROADCAST]
|  |  mem-estimate=16.00KB mem-reservation=0B thread-reservation=0
|  |  tuple-ids=1 row-size=109B cardinality=25
|  |  in pipelines: 01(GETNEXT)
|  |
|  F01:PLAN FRAGMENT [RANDOM] hosts=1 instances=1
|  Per-Host Resources: mem-estimate=16.00MB mem-reservation=32.00KB thread-reservation=2
|  01:SCAN HDFS [tpch_parquet.nation, RANDOM]
|     HDFS partitions=1/1 files=1 size=3.04KB
|     stored statistics:
|       table: rows=25 size=3.04KB
|       columns: all
|     extrapolated-rows=disabled max-scan-range-rows=25
|     mem-estimate=16.00MB mem-reservation=32.00KB thread-reservation=1
|     tuple-ids=1 row-size=109B cardinality=25
|     in pipelines: 01(GETNEXT)
|
00:SCAN HDFS [tpch_parquet.customer, RANDOM]
   HDFS partitions=1/1 files=1 size=12.34MB
   runtime filters: RF000[bloom] -> c_nationkey
   stored statistics:
     table: rows=150.00K size=12.34MB
     columns: all
   extrapolated-rows=disabled max-scan-range-rows=150.00K
   mem-estimate=24.00MB mem-reservation=16.00MB thread-reservation=1
   tuple-ids=0 row-size=218B cardinality=150.00K
   in pipelines: 00(GETNEXT)
====
# Join with large build side.
# Uses default buffer size. Two max-size buffers are required.
select straight_join *
from tpch_parquet.lineitem
    left join tpch_parquet.orders on l_orderkey = o_orderkey
---- DISTRIBUTEDPLAN
Max Per-Host Resource Reservation: Memory=110.00MB Threads=5
Per-Host Resource Estimates: Memory=410MB
Analyzed query: SELECT /* +straight_join */ * FROM tpch_parquet.lineitem LEFT
OUTER JOIN tpch_parquet.orders ON l_orderkey = o_orderkey

F02:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1
|  Per-Host Resources: mem-estimate=11.20MB mem-reservation=0B thread-reservation=1
PLAN-ROOT SINK
|  output exprs: tpch_parquet.lineitem.l_orderkey, tpch_parquet.lineitem.l_partkey, tpch_parquet.lineitem.l_suppkey, tpch_parquet.lineitem.l_linenumber, tpch_parquet.lineitem.l_quantity, tpch_parquet.lineitem.l_extendedprice, tpch_parquet.lineitem.l_discount, tpch_parquet.lineitem.l_tax, tpch_parquet.lineitem.l_returnflag, tpch_parquet.lineitem.l_linestatus, tpch_parquet.lineitem.l_shipdate, tpch_parquet.lineitem.l_commitdate, tpch_parquet.lineitem.l_receiptdate, tpch_parquet.lineitem.l_shipinstruct, tpch_parquet.lineitem.l_shipmode, tpch_parquet.lineitem.l_comment, tpch_parquet.orders.o_orderkey, tpch_parquet.orders.o_custkey, tpch_parquet.orders.o_orderstatus, tpch_parquet.orders.o_totalprice, tpch_parquet.orders.o_orderdate, tpch_parquet.orders.o_orderpriority, tpch_parquet.orders.o_clerk, tpch_parquet.orders.o_shippriority, tpch_parquet.orders.o_comment
|  mem-estimate=0B mem-reservation=0B thread-reservation=0
|
04:EXCHANGE [UNPARTITIONED]
|  mem-estimate=11.20MB mem-reservation=0B thread-reservation=0
|  tuple-ids=0,1N row-size=402B cardinality=6.00M
|  in pipelines: 00(GETNEXT)
|
F00:PLAN FRAGMENT [RANDOM] hosts=3 instances=3
Per-Host Resources: mem-estimate=359.29MB mem-reservation=86.00MB thread-reservation=2
02:HASH JOIN [LEFT OUTER JOIN, BROADCAST]
|  hash predicates: l_orderkey = o_orderkey
|  fk/pk conjuncts: l_orderkey = o_orderkey
|  mem-estimate=268.94MB mem-reservation=46.00MB spill-buffer=2.00MB thread-reservation=0
|  tuple-ids=0,1N row-size=402B cardinality=6.00M
|  in pipelines: 00(GETNEXT), 01(OPEN)
|
|--03:EXCHANGE [BROADCAST]
|  |  mem-estimate=10.34MB mem-reservation=0B thread-reservation=0
|  |  tuple-ids=1 row-size=171B cardinality=1.50M
|  |  in pipelines: 01(GETNEXT)
|  |
|  F01:PLAN FRAGMENT [RANDOM] hosts=2 instances=2
|  Per-Host Resources: mem-estimate=40.00MB mem-reservation=24.00MB thread-reservation=2
|  01:SCAN HDFS [tpch_parquet.orders, RANDOM]
|     HDFS partitions=1/1 files=2 size=54.21MB
|     stored statistics:
|       table: rows=1.50M size=54.21MB
|       columns: all
|     extrapolated-rows=disabled max-scan-range-rows=1.18M
|     mem-estimate=40.00MB mem-reservation=24.00MB thread-reservation=1
|     tuple-ids=1 row-size=171B cardinality=1.50M
|     in pipelines: 01(GETNEXT)
|
00:SCAN HDFS [tpch_parquet.lineitem, RANDOM]
   HDFS partitions=1/1 files=3 size=193.99MB
   stored statistics:
     table: rows=6.00M size=193.99MB
     columns: all
   extrapolated-rows=disabled max-scan-range-rows=2.14M
   mem-estimate=80.00MB mem-reservation=40.00MB thread-reservation=1
   tuple-ids=0 row-size=231B cardinality=6.00M
   in pipelines: 00(GETNEXT)
====
# Null-aware anti-join with medium build side.
# Uses intermediate buffer size plus two max-size buffers.
select * from tpch_parquet.lineitem
where l_orderkey not in (select o_orderkey from tpch_parquet.orders)
---- DISTRIBUTEDPLAN
Max Per-Host Resource Reservation: Memory=78.00MB Threads=5
Per-Host Resource Estimates: Memory=175MB
Analyzed query: SELECT * FROM tpch_parquet.lineitem NULL AWARE LEFT ANTI JOIN
(SELECT o_orderkey FROM tpch_parquet.orders) `$a$1` (`$c$1`) ON l_orderkey =
`$a$1`.`$c$1`

F02:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1
|  Per-Host Resources: mem-estimate=10.69MB mem-reservation=0B thread-reservation=1
PLAN-ROOT SINK
|  output exprs: tpch_parquet.lineitem.l_orderkey, tpch_parquet.lineitem.l_partkey, tpch_parquet.lineitem.l_suppkey, tpch_parquet.lineitem.l_linenumber, tpch_parquet.lineitem.l_quantity, tpch_parquet.lineitem.l_extendedprice, tpch_parquet.lineitem.l_discount, tpch_parquet.lineitem.l_tax, tpch_parquet.lineitem.l_returnflag, tpch_parquet.lineitem.l_linestatus, tpch_parquet.lineitem.l_shipdate, tpch_parquet.lineitem.l_commitdate, tpch_parquet.lineitem.l_receiptdate, tpch_parquet.lineitem.l_shipinstruct, tpch_parquet.lineitem.l_shipmode, tpch_parquet.lineitem.l_comment
|  mem-estimate=0B mem-reservation=0B thread-reservation=0
|
04:EXCHANGE [UNPARTITIONED]
|  mem-estimate=10.69MB mem-reservation=0B thread-reservation=0
|  tuple-ids=0 row-size=231B cardinality=6.00M
|  in pipelines: 00(GETNEXT)
|
F00:PLAN FRAGMENT [RANDOM] hosts=3 instances=3
Per-Host Resources: mem-estimate=124.02MB mem-reservation=74.00MB thread-reservation=2
02:HASH JOIN [NULL AWARE LEFT ANTI JOIN, BROADCAST]
|  hash predicates: l_orderkey = o_orderkey
|  mem-estimate=34.00MB mem-reservation=34.00MB spill-buffer=1.00MB thread-reservation=0
|  tuple-ids=0 row-size=231B cardinality=6.00M
|  in pipelines: 00(GETNEXT), 01(OPEN)
|
|--03:EXCHANGE [BROADCAST]
|  |  mem-estimate=10.02MB mem-reservation=0B thread-reservation=0
|  |  tuple-ids=1 row-size=8B cardinality=1.50M
|  |  in pipelines: 01(GETNEXT)
|  |
|  F01:PLAN FRAGMENT [RANDOM] hosts=2 instances=2
|  Per-Host Resources: mem-estimate=40.00MB mem-reservation=4.00MB thread-reservation=2
|  01:SCAN HDFS [tpch_parquet.orders, RANDOM]
|     HDFS partitions=1/1 files=2 size=54.21MB
|     stored statistics:
|       table: rows=1.50M size=54.21MB
|       columns: all
|     extrapolated-rows=disabled max-scan-range-rows=1.18M
|     mem-estimate=40.00MB mem-reservation=4.00MB thread-reservation=1
|     tuple-ids=1 row-size=8B cardinality=1.50M
|     in pipelines: 01(GETNEXT)
|
00:SCAN HDFS [tpch_parquet.lineitem, RANDOM]
   HDFS partitions=1/1 files=3 size=193.99MB
   stored statistics:
     table: rows=6.00M size=193.99MB
     columns: all
   extrapolated-rows=disabled max-scan-range-rows=2.14M
   mem-estimate=80.00MB mem-reservation=40.00MB thread-reservation=1
   tuple-ids=0 row-size=231B cardinality=6.00M
   in pipelines: 00(GETNEXT)
====
# Mid NDV aggregation.
# Uses smaller-than-default buffer size. Two max-size buffers are required.
select straight_join l_orderkey, o_orderstatus, count(*)
from tpch_parquet.lineitem
    join tpch_parquet.orders on o_orderkey = l_orderkey
group by 1, 2
having count(*) = 1
---- DISTRIBUTEDPLAN
Max Per-Host Resource Reservation: Memory=110.00MB Threads=7
Per-Host Resource Estimates: Memory=272MB
Analyzed query: SELECT /* +straight_join */ l_orderkey, o_orderstatus, count(*)
FROM tpch_parquet.lineitem INNER JOIN tpch_parquet.orders ON o_orderkey =
l_orderkey GROUP BY l_orderkey, o_orderstatus HAVING count(*) = CAST(1 AS
BIGINT)

F04:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1
|  Per-Host Resources: mem-estimate=10.10MB mem-reservation=0B thread-reservation=1
PLAN-ROOT SINK
|  output exprs: l_orderkey, o_orderstatus, count(*)
|  mem-estimate=0B mem-reservation=0B thread-reservation=0
|
08:EXCHANGE [UNPARTITIONED]
|  mem-estimate=10.10MB mem-reservation=0B thread-reservation=0
|  tuple-ids=2 row-size=29B cardinality=4.69M
|  in pipelines: 07(GETNEXT)
|
F03:PLAN FRAGMENT [HASH(l_orderkey,o_orderstatus)] hosts=3 instances=3
Per-Host Resources: mem-estimate=41.10MB mem-reservation=31.00MB thread-reservation=1
07:AGGREGATE [FINALIZE]
|  output: count:merge(*)
|  group by: l_orderkey, o_orderstatus
|  having: count(*) = CAST(1 AS BIGINT)
|  mem-estimate=31.00MB mem-reservation=31.00MB spill-buffer=1.00MB thread-reservation=0
|  tuple-ids=2 row-size=29B cardinality=4.69M
|  in pipelines: 07(GETNEXT), 00(OPEN)
|
06:EXCHANGE [HASH(l_orderkey,o_orderstatus)]
|  mem-estimate=10.10MB mem-reservation=0B thread-reservation=0
|  tuple-ids=2 row-size=29B cardinality=4.69M
|  in pipelines: 00(GETNEXT)
|
F02:PLAN FRAGMENT [HASH(l_orderkey)] hosts=3 instances=3
Per-Host Resources: mem-estimate=99.65MB mem-reservation=66.00MB thread-reservation=1 runtime-filters-memory=1.00MB
03:AGGREGATE [STREAMING]
|  output: count(*)
|  group by: l_orderkey, o_orderstatus
|  mem-estimate=47.56MB mem-reservation=34.00MB spill-buffer=2.00MB thread-reservation=0
|  tuple-ids=2 row-size=29B cardinality=4.69M
|  in pipelines: 00(GETNEXT)
|
02:HASH JOIN [INNER JOIN, PARTITIONED]
|  hash predicates: l_orderkey = o_orderkey
|  fk/pk conjuncts: l_orderkey = o_orderkey
|  runtime filters: RF000[bloom] <- o_orderkey
|  mem-estimate=31.00MB mem-reservation=31.00MB spill-buffer=1.00MB thread-reservation=0
|  tuple-ids=0,1 row-size=29B cardinality=5.76M
|  in pipelines: 00(GETNEXT), 01(OPEN)
|
|--05:EXCHANGE [HASH(o_orderkey)]
|  |  mem-estimate=10.05MB mem-reservation=0B thread-reservation=0
|  |  tuple-ids=1 row-size=21B cardinality=1.50M
|  |  in pipelines: 01(GETNEXT)
|  |
|  F01:PLAN FRAGMENT [RANDOM] hosts=2 instances=2
|  Per-Host Resources: mem-estimate=40.00MB mem-reservation=8.00MB thread-reservation=2
|  01:SCAN HDFS [tpch_parquet.orders, RANDOM]
|     HDFS partitions=1/1 files=2 size=54.21MB
|     stored statistics:
|       table: rows=1.50M size=54.21MB
|       columns: all
|     extrapolated-rows=disabled max-scan-range-rows=1.18M
|     mem-estimate=40.00MB mem-reservation=8.00MB thread-reservation=1
|     tuple-ids=1 row-size=21B cardinality=1.50M
|     in pipelines: 01(GETNEXT)
|
04:EXCHANGE [HASH(l_orderkey)]
|  mem-estimate=10.04MB mem-reservation=0B thread-reservation=0
|  tuple-ids=0 row-size=8B cardinality=6.00M
|  in pipelines: 00(GETNEXT)
|
F00:PLAN FRAGMENT [RANDOM] hosts=3 instances=3
Per-Host Resources: mem-estimate=81.00MB mem-reservation=5.00MB thread-reservation=2 runtime-filters-memory=1.00MB
00:SCAN HDFS [tpch_parquet.lineitem, RANDOM]
   HDFS partitions=1/1 files=3 size=193.99MB
   runtime filters: RF000[bloom] -> l_orderkey
   stored statistics:
     table: rows=6.00M size=193.99MB
     columns: all
   extrapolated-rows=disabled max-scan-range-rows=2.14M
   mem-estimate=80.00MB mem-reservation=4.00MB thread-reservation=1
   tuple-ids=0 row-size=8B cardinality=6.00M
   in pipelines: 00(GETNEXT)
====
# High NDV aggregation.
# Uses default buffer size. Two max-size buffers are required.
select distinct *
from tpch_parquet.lineitem
---- DISTRIBUTEDPLAN
Max Per-Host Resource Reservation: Memory=120.00MB Threads=4
Per-Host Resource Estimates: Memory=1.52GB
Analyzed query: SELECT DISTINCT * FROM tpch_parquet.lineitem

F02:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1
|  Per-Host Resources: mem-estimate=10.69MB mem-reservation=0B thread-reservation=1
PLAN-ROOT SINK
|  output exprs: tpch_parquet.lineitem.l_orderkey, tpch_parquet.lineitem.l_partkey, tpch_parquet.lineitem.l_suppkey, tpch_parquet.lineitem.l_linenumber, tpch_parquet.lineitem.l_quantity, tpch_parquet.lineitem.l_extendedprice, tpch_parquet.lineitem.l_discount, tpch_parquet.lineitem.l_tax, tpch_parquet.lineitem.l_returnflag, tpch_parquet.lineitem.l_linestatus, tpch_parquet.lineitem.l_shipdate, tpch_parquet.lineitem.l_commitdate, tpch_parquet.lineitem.l_receiptdate, tpch_parquet.lineitem.l_shipinstruct, tpch_parquet.lineitem.l_shipmode, tpch_parquet.lineitem.l_comment
|  mem-estimate=0B mem-reservation=0B thread-reservation=0
|
04:EXCHANGE [UNPARTITIONED]
|  mem-estimate=10.69MB mem-reservation=0B thread-reservation=0
|  tuple-ids=1 row-size=231B cardinality=6.00M
|  in pipelines: 03(GETNEXT)
|
F01:PLAN FRAGMENT [HASH(tpch_parquet.lineitem.l_orderkey,tpch_parquet.lineitem.l_partkey,tpch_parquet.lineitem.l_suppkey,tpch_parquet.lineitem.l_linenumber,tpch_parquet.lineitem.l_quantity,tpch_parquet.lineitem.l_extendedprice,tpch_parquet.lineitem.l_discount,tpch_parquet.lineitem.l_tax,tpch_parquet.lineitem.l_returnflag,tpch_parquet.lineitem.l_linestatus,tpch_parquet.lineitem.l_shipdate,tpch_parquet.lineitem.l_commitdate,tpch_parquet.lineitem.l_receiptdate,tpch_parquet.lineitem.l_shipinstruct,tpch_parquet.lineitem.l_shipmode,tpch_parquet.lineitem.l_comment)] hosts=3 instances=3
Per-Host Resources: mem-estimate=737.12MB mem-reservation=46.00MB thread-reservation=1
03:AGGREGATE [FINALIZE]
|  group by: tpch_parquet.lineitem.l_orderkey, tpch_parquet.lineitem.l_partkey, tpch_parquet.lineitem.l_suppkey, tpch_parquet.lineitem.l_linenumber, tpch_parquet.lineitem.l_quantity, tpch_parquet.lineitem.l_extendedprice, tpch_parquet.lineitem.l_discount, tpch_parquet.lineitem.l_tax, tpch_parquet.lineitem.l_returnflag, tpch_parquet.lineitem.l_linestatus, tpch_parquet.lineitem.l_shipdate, tpch_parquet.lineitem.l_commitdate, tpch_parquet.lineitem.l_receiptdate, tpch_parquet.lineitem.l_shipinstruct, tpch_parquet.lineitem.l_shipmode, tpch_parquet.lineitem.l_comment
|  mem-estimate=726.43MB mem-reservation=46.00MB spill-buffer=2.00MB thread-reservation=0
|  tuple-ids=1 row-size=231B cardinality=6.00M
|  in pipelines: 03(GETNEXT), 00(OPEN)
|
02:EXCHANGE [HASH(tpch_parquet.lineitem.l_orderkey,tpch_parquet.lineitem.l_partkey,tpch_parquet.lineitem.l_suppkey,tpch_parquet.lineitem.l_linenumber,tpch_parquet.lineitem.l_quantity,tpch_parquet.lineitem.l_extendedprice,tpch_parquet.lineitem.l_discount,tpch_parquet.lineitem.l_tax,tpch_parquet.lineitem.l_returnflag,tpch_parquet.lineitem.l_linestatus,tpch_parquet.lineitem.l_shipdate,tpch_parquet.lineitem.l_commitdate,tpch_parquet.lineitem.l_receiptdate,tpch_parquet.lineitem.l_shipinstruct,tpch_parquet.lineitem.l_shipmode,tpch_parquet.lineitem.l_comment)]
|  mem-estimate=10.69MB mem-reservation=0B thread-reservation=0
|  tuple-ids=1 row-size=231B cardinality=6.00M
|  in pipelines: 00(GETNEXT)
|
F00:PLAN FRAGMENT [RANDOM] hosts=3 instances=3
Per-Host Resources: mem-estimate=806.43MB mem-reservation=74.00MB thread-reservation=2
01:AGGREGATE [STREAMING]
|  group by: tpch_parquet.lineitem.l_orderkey, tpch_parquet.lineitem.l_partkey, tpch_parquet.lineitem.l_suppkey, tpch_parquet.lineitem.l_linenumber, tpch_parquet.lineitem.l_quantity, tpch_parquet.lineitem.l_extendedprice, tpch_parquet.lineitem.l_discount, tpch_parquet.lineitem.l_tax, tpch_parquet.lineitem.l_returnflag, tpch_parquet.lineitem.l_linestatus, tpch_parquet.lineitem.l_shipdate, tpch_parquet.lineitem.l_commitdate, tpch_parquet.lineitem.l_receiptdate, tpch_parquet.lineitem.l_shipinstruct, tpch_parquet.lineitem.l_shipmode, tpch_parquet.lineitem.l_comment
|  mem-estimate=726.43MB mem-reservation=34.00MB spill-buffer=2.00MB thread-reservation=0
|  tuple-ids=1 row-size=231B cardinality=6.00M
|  in pipelines: 00(GETNEXT)
|
00:SCAN HDFS [tpch_parquet.lineitem, RANDOM]
   HDFS partitions=1/1 files=3 size=193.99MB
   stored statistics:
     table: rows=6.00M size=193.99MB
     columns: all
   extrapolated-rows=disabled max-scan-range-rows=2.14M
   mem-estimate=80.00MB mem-reservation=40.00MB thread-reservation=1
   tuple-ids=0 row-size=231B cardinality=6.00M
   in pipelines: 00(GETNEXT)
====
# High NDV aggregation with string aggregation function.
# Uses default buffer size. Two max-size buffers are required.
select l_orderkey, l_partkey, group_concat(l_linestatus, ",")
from tpch_parquet.lineitem
group by 1, 2
---- DISTRIBUTEDPLAN
Max Per-Host Resource Reservation: Memory=98.00MB Threads=4
Per-Host Resource Estimates: Memory=276MB
Analyzed query: SELECT l_orderkey, l_partkey, group_concat(l_linestatus, ',')
FROM tpch_parquet.lineitem GROUP BY l_orderkey, l_partkey

F02:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1
|  Per-Host Resources: mem-estimate=10.09MB mem-reservation=0B thread-reservation=1
PLAN-ROOT SINK
|  output exprs: l_orderkey, l_partkey, group_concat(l_linestatus, ',')
|  mem-estimate=0B mem-reservation=0B thread-reservation=0
|
04:EXCHANGE [UNPARTITIONED]
|  mem-estimate=10.09MB mem-reservation=0B thread-reservation=0
|  tuple-ids=1 row-size=28B cardinality=6.00M
|  in pipelines: 03(GETNEXT)
|
F01:PLAN FRAGMENT [HASH(l_orderkey,l_partkey)] hosts=3 instances=3
Per-Host Resources: mem-estimate=98.23MB mem-reservation=48.00MB thread-reservation=1
03:AGGREGATE [FINALIZE]
|  output: group_concat:merge(l_linestatus, ',')
|  group by: l_orderkey, l_partkey
|  mem-estimate=88.14MB mem-reservation=48.00MB spill-buffer=2.00MB thread-reservation=0
|  tuple-ids=1 row-size=28B cardinality=6.00M
|  in pipelines: 03(GETNEXT), 00(OPEN)
|
02:EXCHANGE [HASH(l_orderkey,l_partkey)]
|  mem-estimate=10.09MB mem-reservation=0B thread-reservation=0
|  tuple-ids=1 row-size=28B cardinality=6.00M
|  in pipelines: 00(GETNEXT)
|
F00:PLAN FRAGMENT [RANDOM] hosts=3 instances=3
Per-Host Resources: mem-estimate=168.14MB mem-reservation=50.00MB thread-reservation=2
01:AGGREGATE [STREAMING]
|  output: group_concat(l_linestatus, ',')
|  group by: l_orderkey, l_partkey
|  mem-estimate=88.14MB mem-reservation=34.00MB spill-buffer=2.00MB thread-reservation=0
|  tuple-ids=1 row-size=28B cardinality=6.00M
|  in pipelines: 00(GETNEXT)
|
00:SCAN HDFS [tpch_parquet.lineitem, RANDOM]
   HDFS partitions=1/1 files=3 size=193.99MB
   stored statistics:
     table: rows=6.00M size=193.99MB
     columns: all
   extrapolated-rows=disabled max-scan-range-rows=2.14M
   mem-estimate=80.00MB mem-reservation=16.00MB thread-reservation=1
   tuple-ids=0 row-size=29B cardinality=6.00M
   in pipelines: 00(GETNEXT)
====
# Sort + Analytic.
# The size of buffers for these plan nodes is increased to fit max_row_size.
select max(tinyint_col) over(partition by int_col)
from functional.alltypes
---- DISTRIBUTEDPLAN
Max Per-Host Resource Reservation: Memory=40.03MB Threads=4
Per-Host Resource Estimates: Memory=56MB
Codegen disabled by planner
Analyzed query: SELECT max(tinyint_col) OVER (PARTITION BY int_col) FROM
functional.alltypes

F02:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1
|  Per-Host Resources: mem-estimate=56.26KB mem-reservation=0B thread-reservation=1
PLAN-ROOT SINK
|  output exprs: max(tinyint_col)
|  mem-estimate=0B mem-reservation=0B thread-reservation=0
|
04:EXCHANGE [UNPARTITIONED]
|  mem-estimate=56.26KB mem-reservation=0B thread-reservation=0
|  tuple-ids=3,2 row-size=6B cardinality=7.30K
|  in pipelines: 01(GETNEXT)
|
F01:PLAN FRAGMENT [HASH(int_col)] hosts=3 instances=3
Per-Host Resources: mem-estimate=40.04MB mem-reservation=40.00MB thread-reservation=1
02:ANALYTIC
|  functions: max(tinyint_col)
|  partition by: int_col
|  mem-estimate=16.00MB mem-reservation=16.00MB spill-buffer=8.00MB thread-reservation=0
|  tuple-ids=3,2 row-size=6B cardinality=7.30K
|  in pipelines: 01(GETNEXT)
|
01:SORT
|  order by: int_col ASC NULLS FIRST
|  mem-estimate=24.00MB mem-reservation=24.00MB spill-buffer=8.00MB thread-reservation=0
|  tuple-ids=3 row-size=5B cardinality=7.30K
|  in pipelines: 01(GETNEXT), 00(OPEN)
|
03:EXCHANGE [HASH(int_col)]
|  mem-estimate=38.88KB mem-reservation=0B thread-reservation=0
|  tuple-ids=0 row-size=5B cardinality=7.30K
|  in pipelines: 00(GETNEXT)
|
F00:PLAN FRAGMENT [RANDOM] hosts=3 instances=3
Per-Host Resources: mem-estimate=16.00MB mem-reservation=32.00KB thread-reservation=2
00:SCAN HDFS [functional.alltypes, RANDOM]
   HDFS partitions=24/24 files=24 size=478.45KB
   stored statistics:
     table: rows=7.30K size=478.45KB
     partitions: 24/24 rows=7.30K
     columns: all
   extrapolated-rows=disabled max-scan-range-rows=310
   mem-estimate=16.00MB mem-reservation=32.00KB thread-reservation=1
   tuple-ids=0 row-size=5B cardinality=7.30K
   in pipelines: 00(GETNEXT)
====
