fix late materialization bug

This commit is contained in:
zl0
2021-09-24 19:19:08 +08:00
committed by wangzelin.wzl
parent bda3d4e6c5
commit 16b086a718
36 changed files with 496 additions and 201 deletions

View File

@ -1853,7 +1853,7 @@ Outputs & filters:
2 - output([t2.c1], [t2.c2], [t2.c3]), filter(nil), dop=1
3 - output([t2.c1], [t2.c2], [t2.c3]), filter(nil),
force partition granule, asc.
4 - output([t2.c1], [t2.c2], [t2.c3]), filter(nil), startup_filter([0]),
4 - output([t2.c1], [t2.c2], [t2.c3]), filter(nil),
access([t2.c1], [t2.c2], [t2.c3]), partitions(p[0-2]),
is_index_back=false,
range_key([t2.c1]), range(MIN ; MAX)always true
@ -1862,7 +1862,7 @@ Outputs & filters:
7 - output([t1.c1], [t1.c2]), filter(nil), dop=1
8 - output([t1.c1], [t1.c2]), filter(nil),
force partition granule, asc.
9 - output([t1.c1], [t1.c2]), filter(nil), startup_filter([0]),
9 - output([t1.c1], [t1.c2]), filter(nil),
access([t1.c1], [t1.c2]), partitions(p[0-4]),
is_index_back=false,
range_key([t1.c1]), range(MIN ; MAX)always true
@ -2096,11 +2096,11 @@ SQL: select * from t1 where true;
Outputs & filters:
-------------------------------------
0 - output([t1.c1], [t1.c2]), filter(nil)
0 - output([t1.c1], [t1.c2]), filter(nil), startup_filter([1])
1 - output([t1.c1], [t1.c2]), filter(nil), dop=1
2 - output([t1.c1], [t1.c2]), filter(nil),
force partition granule, asc.
3 - output([t1.c1], [t1.c2]), filter(nil), startup_filter([1]),
3 - output([t1.c1], [t1.c2]), filter(nil),
access([t1.c1], [t1.c2]), partitions(p[0-4]),
is_index_back=false,
range_key([t1.c1]), range(MIN ; MAX)always true
@ -2122,11 +2122,11 @@ SQL: select * from t1 where 1=2;
Outputs & filters:
-------------------------------------
0 - output([t1.c1], [t1.c2]), filter(nil)
0 - output([t1.c1], [t1.c2]), filter(nil), startup_filter([0])
1 - output([t1.c1], [t1.c2]), filter(nil), dop=1
2 - output([t1.c1], [t1.c2]), filter(nil),
force partition granule, asc.
3 - output([t1.c1], [t1.c2]), filter(nil), startup_filter([0]),
3 - output([t1.c1], [t1.c2]), filter(nil),
access([t1.c1], [t1.c2]), partitions(p[0-4]),
is_index_back=false,
range_key([t1.c1]), range(MIN ; MAX)always true
@ -2195,22 +2195,22 @@ SQL: select * from t1 left join t2 t on t1.c1=t.c1 where false;
Outputs & filters:
-------------------------------------
0 - output([t1.c1], [t1.c2], [t.c1], [t.c2], [t.c3]), filter(nil)
0 - output([t1.c1], [t1.c2], [t.c1], [t.c2], [t.c3]), filter(nil), startup_filter([0])
1 - output([t1.c1], [t1.c2], [t.c1], [t.c2], [t.c3]), filter(nil), dop=1
2 - output([t1.c1], [t1.c2], [t.c1], [t.c2], [t.c3]), filter(nil), startup_filter([0]),
2 - output([t1.c1], [t1.c2], [t.c1], [t.c2], [t.c3]), filter(nil),
equal_conds([t1.c1 = t.c1]), other_conds(nil)
3 - output([t1.c1], [t1.c2]), filter(nil), sort_keys([t1.c1, ASC]), Local Order
4 - (#keys=1, [t1.c1]), output([t1.c1], [t1.c2]), filter(nil), dop=1
5 - output([t1.c1], [t1.c2]), filter(nil),
force partition granule, asc.
6 - output([t1.c1], [t1.c2]), filter(nil), startup_filter([0]),
6 - output([t1.c1], [t1.c2]), filter(nil),
access([t1.c1], [t1.c2]), partitions(p[0-4]),
is_index_back=false,
range_key([t1.c1]), range(MIN ; MAX)always true
7 - output([t.c1], [t.c2], [t.c3]), filter(nil), sort_keys([t.c1, ASC]), local merge sort
8 - output([t.c1], [t.c2], [t.c3]), filter(nil),
affinitize, force partition granule, asc.
9 - output([t.c1], [t.c2], [t.c3]), filter(nil), startup_filter([0]),
9 - output([t.c1], [t.c2], [t.c3]), filter(nil),
access([t.c1], [t.c2], [t.c3]), partitions(p[0-2]),
is_index_back=false,
range_key([t.c1]), range(MIN ; MAX)always true
@ -2244,16 +2244,16 @@ Outputs & filters:
2 - output([t1.c1], [t1.c2]), filter(nil), dop=1
3 - output([t1.c1], [t1.c2]), filter(nil),
force partition granule, asc.
4 - output([t1.c1], [t1.c2]), filter(nil), startup_filter([0]),
4 - output([t1.c1], [t1.c2]), filter(nil),
access([t1.c1], [t1.c2]), partitions(p[0-4]),
is_index_back=false,
range_key([t1.c1]), range(MIN ; MAX)always true
5 - output([t.c1], [t.c2], [t.c3]), filter(nil)
5 - output([t.c1], [t.c2], [t.c3]), filter(nil), startup_filter([1])
6 - output([t.c1], [t.c2], [t.c3]), filter(nil)
7 - output([t.c1], [t.c2], [t.c3]), filter(nil), dop=1
8 - output([t.c1], [t.c2], [t.c3]), filter(nil),
force partition granule, asc.
9 - output([t.c1], [t.c2], [t.c3]), filter(nil), startup_filter([1], [0]),
9 - output([t.c1], [t.c2], [t.c3]), filter(nil),
access([t.c1], [t.c2], [t.c3]), partitions(p[0-2]),
is_index_back=false,
range_key([t.c1]), range(MIN ; MAX)always true
@ -5582,11 +5582,11 @@ SQL: select * from t1 where (1+ 1) in (2);
Outputs & filters:
-------------------------------------
0 - output([t1.c1], [t1.c2]), filter(nil)
0 - output([t1.c1], [t1.c2]), filter(nil), startup_filter([1])
1 - output([t1.c1], [t1.c2]), filter(nil), dop=1
2 - output([t1.c1], [t1.c2]), filter(nil),
force partition granule, asc.
3 - output([t1.c1], [t1.c2]), filter(nil), startup_filter([1]),
3 - output([t1.c1], [t1.c2]), filter(nil),
access([t1.c1], [t1.c2]), partitions(p[0-4]),
is_index_back=false,
range_key([t1.c1]), range(MIN ; MAX)always true
@ -5697,11 +5697,11 @@ SQL: select * from t1 where (1+ 1) in (1);
Outputs & filters:
-------------------------------------
0 - output([t1.c1], [t1.c2]), filter(nil)
0 - output([t1.c1], [t1.c2]), filter(nil), startup_filter([0])
1 - output([t1.c1], [t1.c2]), filter(nil), dop=1
2 - output([t1.c1], [t1.c2]), filter(nil),
force partition granule, asc.
3 - output([t1.c1], [t1.c2]), filter(nil), startup_filter([0]),
3 - output([t1.c1], [t1.c2]), filter(nil),
access([t1.c1], [t1.c2]), partitions(p[0-4]),
is_index_back=false,
range_key([t1.c1]), range(MIN ; MAX)always true
@ -8444,9 +8444,9 @@ Outputs & filters:
access([t7.c1]), partitions(p0),
is_index_back=false,
range_key([t7.c1]), range(MIN ; MAX)always true
2 - output([VIEW1.c1]), filter(nil),
2 - output([VIEW1.c1]), filter(nil), startup_filter([?]),
access([VIEW1.c1])
3 - output([t8.c1]), filter(nil), startup_filter([?]),
3 - output([t8.c1]), filter(nil),
access([t8.c1]), partitions(p0),
is_index_back=false,
range_key([t8.c1]), range(MIN ; MAX)always true
@ -9062,9 +9062,9 @@ Outputs & filters:
access([t7.c1], [t7.c2]), partitions(p0),
is_index_back=false,
range_key([t7.c1]), range(MIN ; MAX)always true
2 - output([VIEW1.t8.c1]), filter(nil),
2 - output([VIEW1.t8.c1]), filter(nil), startup_filter([?]),
access([VIEW1.t8.c1])
3 - output([t8.c1]), filter(nil), startup_filter([?]),
3 - output([t8.c1]), filter(nil),
access([t8.c1]), partitions(p0),
is_index_back=false,
range_key([t8.c1]), range(MIN ; MAX)always true
@ -9756,11 +9756,11 @@ SQL: select c1 from t15 where false;
Outputs & filters:
-------------------------------------
0 - output([t15.c1]), filter(nil)
0 - output([t15.c1]), filter(nil), startup_filter([0])
1 - output([t15.c1]), filter(nil), dop=1
2 - output([t15.c1]), filter(nil),
force partition granule, asc.
3 - output([t15.c1]), filter(nil), startup_filter([0]),
3 - output([t15.c1]), filter(nil),
access([t15.c1]), partitions(p[0-3]),
is_index_back=false,
range_key([t15.__pk_increment], [t15.__pk_cluster_id], [t15.__pk_partition_id]), range(MIN,MIN,MIN ; MAX,MAX,MAX)always true
@ -9786,13 +9786,13 @@ Outputs & filters:
-------------------------------------
0 - output([T_FUN_COUNT_SUM(T_FUN_COUNT(?))]), filter(nil),
group(nil), agg_func([T_FUN_COUNT_SUM(T_FUN_COUNT(?))])
1 - output([T_FUN_COUNT(?)]), filter(nil)
1 - output([T_FUN_COUNT(?)]), filter(nil), startup_filter([0])
2 - output([T_FUN_COUNT(?)]), filter(nil), dop=1
3 - output([T_FUN_COUNT(?)]), filter(nil),
group(nil), agg_func([T_FUN_COUNT(?)])
4 - output([1]), filter(nil),
force partition granule, asc.
5 - output([1]), filter(nil), startup_filter([0]),
5 - output([1]), filter(nil),
access([t15.__pk_increment]), partitions(p[0-3]),
is_index_back=false,
range_key([t15.__pk_increment], [t15.__pk_cluster_id], [t15.__pk_partition_id]), range(MIN,MIN,MIN ; MAX,MAX,MAX)always true
@ -9891,14 +9891,14 @@ SQL: select count(*) from t1 left outer join t2 using(c1) group by (t1.c1) havin
Outputs & filters:
-------------------------------------
0 - output([1]), filter(nil), sort_keys([t1.c1, DESC])
0 - output([1]), filter(nil), startup_filter([?]), sort_keys([t1.c1, DESC])
1 - output([1], [t1.c1]), filter(nil), dop=1
2 - output([1], [t1.c1]), filter(nil), startup_filter([?]),
2 - output([1], [t1.c1]), filter(nil),
equal_conds([t1.c1 = t2.c1]), other_conds(nil)
3 - output([t1.c1]), filter(nil), sort_keys([t1.c1, DESC]), local merge sort
4 - output([t1.c1]), filter(nil),
affinitize, force partition granule, asc.
5 - output([t1.c1]), filter(nil), startup_filter([?]),
5 - output([t1.c1]), filter(nil),
access([t1.c1]), partitions(p[0-4]),
is_index_back=false,
range_key([t1.c1]), range(MIN ; MAX)always true
@ -9906,7 +9906,7 @@ Outputs & filters:
7 - (#keys=1, [t2.c1]), output([t2.c1]), filter(nil), dop=1
8 - output([t2.c1]), filter(nil),
force partition granule, asc.
9 - output([t2.c1]), filter(nil), startup_filter([?]),
9 - output([t2.c1]), filter(nil),
access([t2.c1]), partitions(p[0-2]),
is_index_back=false,
range_key([t2.c1]), range(MIN ; MAX)always true