Skip to content

Commit 88ef3d6

Browse files
authored
fix(cubestore): Fix error in projection pushdown (#7119)
1 parent 7903a79 commit 88ef3d6

File tree

2 files changed

+57
-1
lines changed

2 files changed

+57
-1
lines changed

rust/cubestore/Cargo.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

rust/cubestore/cubestore/src/sql/mod.rs

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4106,6 +4106,10 @@ mod tests {
41064106
.exec_query("CREATE TABLE test.test (id int, created timestamp, value int)")
41074107
.await
41084108
.unwrap();
4109+
service
4110+
.exec_query("CREATE TABLE test.test1 (id int, created timestamp, value int)")
4111+
.await
4112+
.unwrap();
41094113

41104114
service
41114115
.exec_query(
@@ -4119,6 +4123,18 @@ mod tests {
41194123
)
41204124
.await
41214125
.unwrap();
4126+
service
4127+
.exec_query(
4128+
"INSERT INTO test.test1 (id, created, value) values \
4129+
(1, '2022-01-01T00:00:00Z', 1),\
4130+
(2, '2022-01-02T00:00:00Z', 1),\
4131+
(1, '2022-02-03T00:00:00Z', 1),\
4132+
(2, '2022-02-03T00:00:00Z', 2),\
4133+
(2, '2022-01-02T00:00:00Z', 1)\
4134+
",
4135+
)
4136+
.await
4137+
.unwrap();
41224138
let res = service
41234139
.exec_query(
41244140
"SELECT count(*) cnt FROM \
@@ -4150,8 +4166,48 @@ mod tests {
41504166
.await
41514167
.unwrap();
41524168
assert_eq!(res.get_rows(), &vec![Row::new(vec![TableValue::Int(3)])]);
4169+
4170+
let res = service
4171+
.exec_query(
4172+
"SELECT count(*) cnt FROM \
4173+
(\
4174+
SELECT \
4175+
id id,
4176+
created created,
4177+
sum(value) value
4178+
from (
4179+
select * from test.test
4180+
union all
4181+
select * from test.test1
4182+
)
4183+
group by 1, 2
4184+
) tmp",
4185+
)
4186+
.await
4187+
.unwrap();
4188+
assert_eq!(res.get_rows(), &vec![Row::new(vec![TableValue::Int(4)])]);
4189+
4190+
let res = service
4191+
.exec_query(
4192+
"SELECT count(*) cnt FROM \
4193+
(\
4194+
SELECT \
4195+
id id,
4196+
date_trunc('month', created) as month,
4197+
sum(value) as v,
4198+
sum(id)
4199+
from test.test
4200+
group by 1, 2
4201+
order by 1, 2
4202+
) tmp",
4203+
)
4204+
.await
4205+
.unwrap();
4206+
assert_eq!(res.get_rows(), &vec![Row::new(vec![TableValue::Int(4)])]);
41534207
})
41544208
.await;
4209+
4210+
//assert_eq!(res.get_rows(), &vec![Row::new(vec![TableValue::Int(2)])]);
41554211
}
41564212
}
41574213

0 commit comments

Comments
 (0)