| # sort on a non-deterministic expr, gets materialized |
| select * from functional.alltypes order by random() |
| ---- PLAN |
| F00:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1 |
| | Per-Host Resources: mem-estimate=140.00MB mem-reservation=16.00MB thread-reservation=2 |
| PLAN-ROOT SINK |
| | output exprs: id, bool_col, tinyint_col, smallint_col, int_col, bigint_col, float_col, double_col, date_string_col, string_col, timestamp_col, year, month |
| | mem-estimate=4.00MB mem-reservation=4.00MB spill-buffer=2.00MB thread-reservation=0 |
| | |
| 01:SORT |
| | order by: random() ASC |
| | materialized: random() |
| | mem-estimate=12.00MB mem-reservation=12.00MB spill-buffer=2.00MB thread-reservation=0 |
| | tuple-ids=1 row-size=97B cardinality=7.30K |
| | in pipelines: 01(GETNEXT), 00(OPEN) |
| | |
| 00:SCAN HDFS [functional.alltypes] |
| 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=128.00MB mem-reservation=32.00KB thread-reservation=1 |
| tuple-ids=0 row-size=89B cardinality=7.30K |
| in pipelines: 00(GETNEXT) |
| ==== |
| # sort on a deterministic expr that exceeds the cost threshold |
| select * from functional.alltypes order by abs(id) + abs(id) |
| ---- PLAN |
| F00:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1 |
| | Per-Host Resources: mem-estimate=140.00MB mem-reservation=16.00MB thread-reservation=2 |
| PLAN-ROOT SINK |
| | output exprs: id, bool_col, tinyint_col, smallint_col, int_col, bigint_col, float_col, double_col, date_string_col, string_col, timestamp_col, year, month |
| | mem-estimate=4.00MB mem-reservation=4.00MB spill-buffer=2.00MB thread-reservation=0 |
| | |
| 01:SORT |
| | order by: abs(id) + abs(id) ASC |
| | materialized: abs(id) + abs(id) |
| | mem-estimate=12.00MB mem-reservation=12.00MB spill-buffer=2.00MB thread-reservation=0 |
| | tuple-ids=1 row-size=97B cardinality=7.30K |
| | in pipelines: 01(GETNEXT), 00(OPEN) |
| | |
| 00:SCAN HDFS [functional.alltypes] |
| 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=128.00MB mem-reservation=32.00KB thread-reservation=1 |
| tuple-ids=0 row-size=89B cardinality=7.30K |
| in pipelines: 00(GETNEXT) |
| ==== |
| # sort on a deterministic expr that doesn't exceed the cost threshold |
| select * from functional.alltypes order by tinyint_col + 1 |
| ---- PLAN |
| F00:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1 |
| | Per-Host Resources: mem-estimate=140.00MB mem-reservation=16.00MB thread-reservation=2 |
| PLAN-ROOT SINK |
| | output exprs: id, bool_col, tinyint_col, smallint_col, int_col, bigint_col, float_col, double_col, date_string_col, string_col, timestamp_col, year, month |
| | mem-estimate=4.00MB mem-reservation=4.00MB spill-buffer=2.00MB thread-reservation=0 |
| | |
| 01:SORT |
| | order by: tinyint_col + 1 ASC |
| | mem-estimate=12.00MB mem-reservation=12.00MB spill-buffer=2.00MB thread-reservation=0 |
| | tuple-ids=1 row-size=89B cardinality=7.30K |
| | in pipelines: 01(GETNEXT), 00(OPEN) |
| | |
| 00:SCAN HDFS [functional.alltypes] |
| 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=128.00MB mem-reservation=32.00KB thread-reservation=1 |
| tuple-ids=0 row-size=89B cardinality=7.30K |
| in pipelines: 00(GETNEXT) |
| ==== |
| # sort on multiple exprs, subset is materialized |
| select * from functional.alltypes |
| order by dayofweek(timestamp_col), true, id + 1, string_col = date_string_col, id = tinyint_col |
| ---- PLAN |
| F00:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1 |
| | Per-Host Resources: mem-estimate=140.00MB mem-reservation=16.00MB thread-reservation=2 |
| PLAN-ROOT SINK |
| | output exprs: id, bool_col, tinyint_col, smallint_col, int_col, bigint_col, float_col, double_col, date_string_col, string_col, timestamp_col, year, month |
| | mem-estimate=4.00MB mem-reservation=4.00MB spill-buffer=2.00MB thread-reservation=0 |
| | |
| 01:SORT |
| | order by: dayofweek(timestamp_col) ASC, TRUE ASC, id + 1 ASC, string_col = date_string_col ASC, id = tinyint_col ASC |
| | materialized: dayofweek(timestamp_col), string_col = date_string_col |
| | mem-estimate=12.00MB mem-reservation=12.00MB spill-buffer=2.00MB thread-reservation=0 |
| | tuple-ids=1 row-size=94B cardinality=7.30K |
| | in pipelines: 01(GETNEXT), 00(OPEN) |
| | |
| 00:SCAN HDFS [functional.alltypes] |
| 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=128.00MB mem-reservation=32.00KB thread-reservation=1 |
| tuple-ids=0 row-size=89B cardinality=7.30K |
| in pipelines: 00(GETNEXT) |
| ==== |
| # expensive analytic order by expr gets materialized |
| select last_value(id) over (order by to_date(timestamp_col), bool_col is null) |
| from functional.alltypes |
| ---- PLAN |
| F00:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1 |
| | Per-Host Resources: mem-estimate=144.00MB mem-reservation=20.00MB thread-reservation=2 |
| PLAN-ROOT SINK |
| | output exprs: last_value(id) |
| | mem-estimate=4.00MB mem-reservation=4.00MB spill-buffer=2.00MB thread-reservation=0 |
| | |
| 02:ANALYTIC |
| | functions: last_value(id) |
| | order by: to_date(timestamp_col) ASC, bool_col IS NULL ASC |
| | window: ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW |
| | mem-estimate=4.00MB mem-reservation=4.00MB spill-buffer=2.00MB thread-reservation=0 |
| | tuple-ids=3,2 row-size=37B cardinality=7.30K |
| | in pipelines: 01(GETNEXT) |
| | |
| 01:SORT |
| | order by: to_date(timestamp_col) ASC, bool_col IS NULL ASC |
| | materialized: to_date(timestamp_col) |
| | mem-estimate=12.00MB mem-reservation=12.00MB spill-buffer=2.00MB thread-reservation=0 |
| | tuple-ids=3 row-size=33B cardinality=7.30K |
| | in pipelines: 01(GETNEXT), 00(OPEN) |
| | |
| 00:SCAN HDFS [functional.alltypes] |
| 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=128.00MB mem-reservation=32.00KB thread-reservation=1 |
| tuple-ids=0 row-size=21B cardinality=7.30K |
| in pipelines: 00(GETNEXT) |
| ==== |
| # expensive order by expr in top-n gets materialized |
| select id from functional.alltypes order by string_col like 'a.*b', id * bigint_col, |
| regexp_replace(string_col, 'a.*b', 'c') limit 10 |
| ---- PLAN |
| F00:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1 |
| | Per-Host Resources: mem-estimate=128.00MB mem-reservation=4.00MB thread-reservation=2 |
| PLAN-ROOT SINK |
| | output exprs: id |
| | mem-estimate=4.00MB mem-reservation=4.00MB spill-buffer=2.00MB thread-reservation=0 |
| | |
| 01:TOP-N [LIMIT=10] |
| | order by: string_col LIKE 'a.*b' ASC, id * bigint_col ASC, regexp_replace(string_col, 'a.*b', 'c') ASC |
| | materialized: string_col LIKE 'a.*b', regexp_replace(string_col, 'a.*b', 'c') |
| | mem-estimate=250B mem-reservation=0B thread-reservation=0 |
| | tuple-ids=1 row-size=25B cardinality=10 |
| | in pipelines: 01(GETNEXT), 00(OPEN) |
| | |
| 00:SCAN HDFS [functional.alltypes] |
| 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=128.00MB mem-reservation=32.00KB thread-reservation=1 |
| tuple-ids=0 row-size=25B cardinality=7.30K |
| in pipelines: 00(GETNEXT) |
| ==== |
| # sort on udf, gets materialized |
| select * from functional.alltypes order by TestFn(double_col) |
| ---- PLAN |
| F00:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1 |
| | Per-Host Resources: mem-estimate=140.00MB mem-reservation=16.00MB thread-reservation=2 |
| PLAN-ROOT SINK |
| | output exprs: id, bool_col, tinyint_col, smallint_col, int_col, bigint_col, float_col, double_col, date_string_col, string_col, timestamp_col, year, month |
| | mem-estimate=4.00MB mem-reservation=4.00MB spill-buffer=2.00MB thread-reservation=0 |
| | |
| 01:SORT |
| | order by: default.testfn(double_col) /* NATIVE UDF */ ASC |
| | materialized: default.testfn(double_col) /* NATIVE UDF */ |
| | mem-estimate=12.00MB mem-reservation=12.00MB spill-buffer=2.00MB thread-reservation=0 |
| | tuple-ids=1 row-size=93B cardinality=7.30K |
| | in pipelines: 01(GETNEXT), 00(OPEN) |
| | |
| 00:SCAN HDFS [functional.alltypes] |
| 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=128.00MB mem-reservation=32.00KB thread-reservation=1 |
| tuple-ids=0 row-size=89B cardinality=7.30K |
| in pipelines: 00(GETNEXT) |
| ==== |
| # sort expr contains SlotRefs that don't need to be materialized separately |
| select concat(date_string_col, string_col) c from functional.alltypes order by c |
| ---- PLAN |
| F00:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1 |
| | Per-Host Resources: mem-estimate=140.00MB mem-reservation=16.00MB thread-reservation=2 |
| PLAN-ROOT SINK |
| | output exprs: concat(date_string_col, string_col) |
| | mem-estimate=4.00MB mem-reservation=4.00MB spill-buffer=2.00MB thread-reservation=0 |
| | |
| 01:SORT |
| | order by: concat(date_string_col, string_col) ASC |
| | materialized: concat(date_string_col, string_col) |
| | mem-estimate=12.00MB mem-reservation=12.00MB spill-buffer=2.00MB thread-reservation=0 |
| | tuple-ids=1 row-size=12B cardinality=7.30K |
| | in pipelines: 01(GETNEXT), 00(OPEN) |
| | |
| 00:SCAN HDFS [functional.alltypes] |
| 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=128.00MB mem-reservation=32.00KB thread-reservation=1 |
| tuple-ids=0 row-size=33B cardinality=7.30K |
| in pipelines: 00(GETNEXT) |
| ==== |
| # IMPALA-5270: Rand() and udf inside inline view referenced by analytic function. |
| select id, row_number() over (partition by u order by r) from |
| (select id, random() r, u from |
| (select id, TestFn(double_col) u from functional.alltypestiny) v1 |
| ) v2 |
| order by id |
| ---- PLAN |
| F00:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1 |
| | Per-Host Resources: mem-estimate=42.00MB mem-reservation=16.00MB thread-reservation=2 |
| PLAN-ROOT SINK |
| | output exprs: id, row_number() |
| | mem-estimate=4.00MB mem-reservation=4.00MB spill-buffer=2.00MB thread-reservation=0 |
| | |
| 03:SORT |
| | order by: id ASC |
| | mem-estimate=6.00MB mem-reservation=6.00MB spill-buffer=2.00MB thread-reservation=0 |
| | tuple-ids=4 row-size=12B cardinality=8 |
| | in pipelines: 03(GETNEXT), 01(OPEN) |
| | |
| 02:ANALYTIC |
| | functions: row_number() |
| | partition by: u |
| | order by: random() ASC |
| | window: ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW |
| | mem-estimate=4.00MB mem-reservation=4.00MB spill-buffer=2.00MB thread-reservation=0 |
| | tuple-ids=6,5 row-size=32B cardinality=8 |
| | in pipelines: 01(GETNEXT) |
| | |
| 01:SORT |
| | order by: default.testfn(double_col) /* NATIVE UDF */ ASC NULLS LAST, random() ASC |
| | materialized: default.testfn(double_col) /* NATIVE UDF */, random() |
| | mem-estimate=6.00MB mem-reservation=6.00MB spill-buffer=2.00MB thread-reservation=0 |
| | tuple-ids=6 row-size=24B cardinality=8 |
| | in pipelines: 01(GETNEXT), 00(OPEN) |
| | |
| 00:SCAN HDFS [functional.alltypestiny] |
| HDFS partitions=4/4 files=4 size=460B |
| stored statistics: |
| table: rows=8 size=460B |
| partitions: 4/4 rows=8 |
| columns: all |
| extrapolated-rows=disabled max-scan-range-rows=2 |
| mem-estimate=32.00MB mem-reservation=8.00KB thread-reservation=1 |
| tuple-ids=0 row-size=12B cardinality=8 |
| in pipelines: 00(GETNEXT) |
| ==== |
| # IMPALA-7020: CAST expressions are expensive enough that they should be materialized for |
| # ORDER BY. |
| select * |
| FROM |
| ( |
| SELECT |
| o.*, |
| ROW_NUMBER() OVER(ORDER BY evt_ts DESC) AS rn |
| FROM |
| ( |
| SELECT |
| l_orderkey,l_partkey,l_linenumber,l_quantity, cast (l_shipdate as date) evt_ts |
| FROM |
| tpch_parquet.lineitem |
| ) o |
| ) r |
| WHERE |
| rn BETWEEN 1 AND 101 |
| ORDER BY rn |
| ---- PLAN |
| F00:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1 |
| | Per-Host Resources: mem-estimate=713.05MB mem-reservation=32.00MB thread-reservation=2 |
| PLAN-ROOT SINK |
| | output exprs: l_orderkey, l_partkey, l_linenumber, l_quantity, evt_ts, rn |
| | mem-estimate=22.89MB mem-reservation=4.00MB spill-buffer=2.00MB thread-reservation=0 |
| | |
| 04:SORT |
| | order by: rn ASC |
| | mem-estimate=22.89MB mem-reservation=6.00MB spill-buffer=2.00MB thread-reservation=0 |
| | tuple-ids=4 row-size=40B cardinality=600.12K |
| | in pipelines: 04(GETNEXT), 01(OPEN) |
| | |
| 03:SELECT |
| | predicates: row_number() <= CAST(101 AS BIGINT), row_number() >= CAST(1 AS BIGINT) |
| | mem-estimate=0B mem-reservation=0B thread-reservation=0 |
| | tuple-ids=7,6 row-size=62B cardinality=600.12K |
| | in pipelines: 01(GETNEXT) |
| | |
| 02:ANALYTIC |
| | functions: row_number() |
| | order by: CAST(l_shipdate AS DATE) DESC |
| | window: ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW |
| | mem-estimate=4.00MB mem-reservation=4.00MB spill-buffer=2.00MB thread-reservation=0 |
| | tuple-ids=7,6 row-size=62B cardinality=6.00M |
| | in pipelines: 01(GETNEXT) |
| | |
| 01:SORT |
| | order by: CAST(l_shipdate AS DATE) DESC |
| | materialized: CAST(l_shipdate AS DATE) |
| | mem-estimate=309.05MB mem-reservation=12.00MB spill-buffer=2.00MB thread-reservation=0 |
| | tuple-ids=7 row-size=54B cardinality=6.00M |
| | in pipelines: 01(GETNEXT), 00(OPEN) |
| | |
| 00:SCAN HDFS [tpch_parquet.lineitem] |
| HDFS partitions=1/1 files=3 size=193.98MB |
| stored statistics: |
| table: rows=6.00M size=193.98MB |
| columns: all |
| extrapolated-rows=disabled max-scan-range-rows=2.14M |
| mem-estimate=400.00MB mem-reservation=16.00MB thread-reservation=1 |
| tuple-ids=0 row-size=50B cardinality=6.00M |
| in pipelines: 00(GETNEXT) |
| ==== |
| # IMPALA-7020: negative test - casts between primitive numeric types are cheap enough to |
| # not require materialization. |
| select * |
| FROM |
| ( |
| SELECT |
| o.*, |
| ROW_NUMBER() OVER(ORDER BY lno_f DESC) AS rn |
| FROM |
| ( |
| SELECT |
| l_orderkey,l_partkey, cast(l_linenumber as float) lno_f, l_quantity, cast (l_shipdate as date) evt_ts |
| FROM |
| tpch_parquet.lineitem |
| ) o |
| ) r |
| WHERE |
| rn BETWEEN 1 AND 101 |
| ORDER BY rn |
| ---- PLAN |
| F00:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1 |
| | Per-Host Resources: mem-estimate=690.16MB mem-reservation=32.00MB thread-reservation=2 |
| PLAN-ROOT SINK |
| | output exprs: l_orderkey, l_partkey, lno_f, l_quantity, evt_ts, rn |
| | mem-estimate=22.89MB mem-reservation=4.00MB spill-buffer=2.00MB thread-reservation=0 |
| | |
| 04:SORT |
| | order by: rn ASC |
| | mem-estimate=22.89MB mem-reservation=6.00MB spill-buffer=2.00MB thread-reservation=0 |
| | tuple-ids=4 row-size=40B cardinality=600.12K |
| | in pipelines: 04(GETNEXT), 01(OPEN) |
| | |
| 03:SELECT |
| | predicates: row_number() <= CAST(101 AS BIGINT), row_number() >= CAST(1 AS BIGINT) |
| | mem-estimate=0B mem-reservation=0B thread-reservation=0 |
| | tuple-ids=7,6 row-size=58B cardinality=600.12K |
| | in pipelines: 01(GETNEXT) |
| | |
| 02:ANALYTIC |
| | functions: row_number() |
| | order by: CAST(l_linenumber AS FLOAT) DESC |
| | window: ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW |
| | mem-estimate=4.00MB mem-reservation=4.00MB spill-buffer=2.00MB thread-reservation=0 |
| | tuple-ids=7,6 row-size=58B cardinality=6.00M |
| | in pipelines: 01(GETNEXT) |
| | |
| 01:SORT |
| | order by: CAST(l_linenumber AS FLOAT) DESC |
| | mem-estimate=286.16MB mem-reservation=12.00MB spill-buffer=2.00MB thread-reservation=0 |
| | tuple-ids=7 row-size=50B cardinality=6.00M |
| | in pipelines: 01(GETNEXT), 00(OPEN) |
| | |
| 00:SCAN HDFS [tpch_parquet.lineitem] |
| HDFS partitions=1/1 files=3 size=193.98MB |
| stored statistics: |
| table: rows=6.00M size=193.98MB |
| columns: all |
| extrapolated-rows=disabled max-scan-range-rows=2.14M |
| mem-estimate=400.00MB mem-reservation=16.00MB thread-reservation=1 |
| tuple-ids=0 row-size=50B cardinality=6.00M |
| in pipelines: 00(GETNEXT) |
| ==== |
| # IMPALA-7020: negative test - casts between string and varchar are cheap enough to |
| # not require materialisation |
| select * |
| FROM |
| ( |
| SELECT |
| o.*, |
| ROW_NUMBER() OVER(ORDER BY evt_ts DESC) AS rn |
| FROM |
| ( |
| SELECT |
| l_orderkey,l_partkey, l_linenumber, l_quantity, cast (l_shipdate as varchar(20)) evt_ts |
| FROM |
| tpch_parquet.lineitem |
| ) o |
| ) r |
| WHERE |
| rn BETWEEN 1 AND 101 |
| ORDER BY rn |
| ---- PLAN |
| F00:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1 |
| | Per-Host Resources: mem-estimate=690.16MB mem-reservation=32.00MB thread-reservation=2 |
| PLAN-ROOT SINK |
| | output exprs: l_orderkey, l_partkey, l_linenumber, l_quantity, evt_ts, rn |
| | mem-estimate=33.19MB mem-reservation=4.00MB spill-buffer=2.00MB thread-reservation=0 |
| | |
| 04:SORT |
| | order by: rn ASC |
| | mem-estimate=33.19MB mem-reservation=12.00MB spill-buffer=2.00MB thread-reservation=0 |
| | tuple-ids=4 row-size=58B cardinality=600.12K |
| | in pipelines: 04(GETNEXT), 01(OPEN) |
| | |
| 03:SELECT |
| | predicates: row_number() <= CAST(101 AS BIGINT), row_number() >= CAST(1 AS BIGINT) |
| | mem-estimate=0B mem-reservation=0B thread-reservation=0 |
| | tuple-ids=7,6 row-size=58B cardinality=600.12K |
| | in pipelines: 01(GETNEXT) |
| | |
| 02:ANALYTIC |
| | functions: row_number() |
| | order by: CAST(l_shipdate AS VARCHAR(20)) DESC |
| | window: ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW |
| | mem-estimate=4.00MB mem-reservation=4.00MB spill-buffer=2.00MB thread-reservation=0 |
| | tuple-ids=7,6 row-size=58B cardinality=6.00M |
| | in pipelines: 01(GETNEXT) |
| | |
| 01:SORT |
| | order by: CAST(l_shipdate AS VARCHAR(20)) DESC |
| | mem-estimate=286.16MB mem-reservation=12.00MB spill-buffer=2.00MB thread-reservation=0 |
| | tuple-ids=7 row-size=50B cardinality=6.00M |
| | in pipelines: 01(GETNEXT), 00(OPEN) |
| | |
| 00:SCAN HDFS [tpch_parquet.lineitem] |
| HDFS partitions=1/1 files=3 size=193.98MB |
| stored statistics: |
| table: rows=6.00M size=193.98MB |
| columns: all |
| extrapolated-rows=disabled max-scan-range-rows=2.14M |
| mem-estimate=400.00MB mem-reservation=16.00MB thread-reservation=1 |
| tuple-ids=0 row-size=50B cardinality=6.00M |
| in pipelines: 00(GETNEXT) |
| ==== |