fix shared exprs bug for sort operator

This commit is contained in:
yinyj17
2023-03-27 06:41:40 +00:00
committed by ob-robot
parent e568138f9d
commit 44136ccd43
4 changed files with 48 additions and 10 deletions

View File

@ -1295,13 +1295,13 @@ Outputs & filters:
merge_directions([ASC], [ASC])
2 - output([t7.a], [t7.b], [t7.c], [t7.d], [cast(t7.a, DECIMAL(10, 0))]), filter(nil), rowset=256
sort_keys([cast(t7.a, DECIMAL(10, 0)), ASC], [t7.d, ASC])
3 - output([t7.a], [t7.d], [t7.b], [t7.c]), filter(nil), rowset=256
3 - output([t7.a], [t7.d], [t7.b], [t7.c], [cast(t7.a, DECIMAL(10, 0))]), filter(nil), rowset=256
access([t7.a], [t7.d], [t7.b], [t7.c]), partitions(p0)
is_index_back=false, is_global_index=false,
range_key([t7.__pk_increment]), range(MIN ; MAX)always true
4 - output([t2.a], [t2.b], [t2.c], [cast(t2.b, DECIMAL(-1, -1))]), filter(nil), rowset=256
sort_keys([cast(t2.b, DECIMAL(-1, -1)), ASC], [t2.c, ASC])
5 - output([t2.b], [t2.c], [t2.a]), filter(nil), rowset=256
5 - output([t2.b], [t2.c], [t2.a], [cast(t2.b, DECIMAL(-1, -1))]), filter(nil), rowset=256
access([t2.b], [t2.c], [t2.a]), partitions(p0)
is_index_back=false, is_global_index=false,
range_key([t2.__pk_increment]), range(MIN ; MAX)always true
@ -1438,13 +1438,13 @@ Outputs & filters:
merge_directions([ASC], [ASC])
2 - output([t7.a], [t7.b], [t7.c], [t7.d], [cast(t7.a, DECIMAL(10, 0))]), filter(nil), rowset=256
sort_keys([cast(t7.a, DECIMAL(10, 0)), ASC], [t7.d, ASC])
3 - output([t7.a], [t7.d], [t7.b], [t7.c]), filter(nil), rowset=256
3 - output([t7.a], [t7.d], [t7.b], [t7.c], [cast(t7.a, DECIMAL(10, 0))]), filter(nil), rowset=256
access([t7.a], [t7.d], [t7.b], [t7.c]), partitions(p0)
is_index_back=false, is_global_index=false,
range_key([t7.__pk_increment]), range(MIN ; MAX)always true
4 - output([t2.a], [t2.b], [t2.c], [cast(t2.b, DECIMAL(-1, -1))]), filter(nil), rowset=256
sort_keys([cast(t2.b, DECIMAL(-1, -1)), ASC], [t2.c, ASC])
5 - output([t2.b], [t2.c], [t2.a]), filter(nil), rowset=256
5 - output([t2.b], [t2.c], [t2.a], [cast(t2.b, DECIMAL(-1, -1))]), filter(nil), rowset=256
access([t2.b], [t2.c], [t2.a]), partitions(p0)
is_index_back=false, is_global_index=false,
range_key([t2.__pk_increment]), range(MIN ; MAX)always true
@ -1587,13 +1587,13 @@ Outputs & filters:
merge_directions([ASC], [ASC])
2 - output([t7.a], [t7.b], [t7.c], [t7.d], [cast(t7.a, DECIMAL(10, 0))]), filter(nil), rowset=256
sort_keys([cast(t7.a, DECIMAL(10, 0)), ASC], [t7.d, ASC])
3 - output([t7.a], [t7.d], [t7.b], [t7.c]), filter(nil), rowset=256
3 - output([t7.a], [t7.d], [t7.b], [t7.c], [cast(t7.a, DECIMAL(10, 0))]), filter(nil), rowset=256
access([t7.a], [t7.d], [t7.b], [t7.c]), partitions(p0)
is_index_back=false, is_global_index=false,
range_key([t7.__pk_increment]), range(MIN ; MAX)always true
4 - output([t2.a], [t2.b], [t2.c], [cast(t2.b, DECIMAL(-1, -1))]), filter(nil), rowset=256
sort_keys([cast(t2.b, DECIMAL(-1, -1)), ASC], [t2.c, ASC])
5 - output([t2.b], [t2.c], [t2.a]), filter(nil), rowset=256
5 - output([t2.b], [t2.c], [t2.a], [cast(t2.b, DECIMAL(-1, -1))]), filter(nil), rowset=256
access([t2.b], [t2.c], [t2.a]), partitions(p0)
is_index_back=false, is_global_index=false,
range_key([t2.__pk_increment]), range(MIN ; MAX)always true

View File

@ -101,8 +101,8 @@ Outputs & filters:
dop=2
2 - output([a.c2 + 1 + a.c1], [a.c1], [a.c2]), filter(nil), rowset=256
sort_keys([a.c2 + 1 + a.c1, ASC])
3 - output([a.c1], [a.c2]), filter(nil), rowset=256
4 - output([a.c1], [a.c2]), filter(nil), rowset=256
3 - output([a.c1], [a.c2], [a.c2 + 1 + a.c1]), filter(nil), rowset=256
4 - output([a.c1], [a.c2], [a.c2 + 1 + a.c1]), filter(nil), rowset=256
access([a.c1], [a.c2]), partitions(p[0-4])
is_index_back=false, is_global_index=false,
range_key([a.c1]), range(MIN ; MAX)always true
@ -249,7 +249,7 @@ Outputs & filters:
dop=2
2 - output([a.c1], [a.c2 + 2], [a.c2]), filter(nil), rowset=256
sort_keys([a.c1, ASC], [a.c2 + 2, ASC])
3 - output([a.c1], [a.c2]), filter(nil), rowset=256
3 - output([a.c1], [a.c2 + 2], [a.c2]), filter(nil), rowset=256
equal_conds([abs(cast(a.c2, BIGINT(-1, 0))) + 2 = b.c1]), other_conds(nil)
4 - output([a.c1], [a.c2], [abs(cast(a.c2, BIGINT(-1, 0))) + 2]), filter(nil), rowset=256
5 - output([a.c1], [a.c2], [abs(cast(a.c2, BIGINT(-1, 0))) + 2]), filter(nil), rowset=256
@ -357,7 +357,7 @@ Outputs & filters:
dop=2
2 - output([a.c1], [b.c1 + 2], [b.c1], [b.c2], [a.c2]), filter(nil), rowset=256
sort_keys([a.c1, ASC], [b.c1 + 2, ASC])
3 - output([a.c1], [b.c1], [b.c2], [a.c2]), filter(nil), rowset=256
3 - output([a.c1], [b.c1 + 2], [b.c1], [b.c2], [a.c2]), filter(nil), rowset=256
equal_conds([a.c1 + 2 = b.c2 + 1]), other_conds(nil)
4 - output([b.c1], [b.c2]), filter(nil), rowset=256
5 - output([b.c1], [b.c2]), filter(nil), rowset=256