Skip to content

Commit

Permalink
fix(cubesql): Remove prefix underscore from aliases (#8266)
Browse files Browse the repository at this point in the history
  • Loading branch information
Nikita-str committed May 15, 2024
1 parent e63b4ab commit 24e8977
Show file tree
Hide file tree
Showing 4 changed files with 39 additions and 3 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
cube(`SegmentTest`, {
sql: `
SELECT 123 AS value, 1 AS segment UNION ALL
SELECT 456 AS value, 1 AS segment UNION ALL
SELECT 789 AS value, 2 AS segment UNION ALL
SELECT 987 AS value, 2 AS segment
`,
measures: {
count_distinct: {
sql: 'value',
type: 'count_distinct',
},
},
dimensions: {
value: {
sql: `value`,
type: `number`,
primaryKey: true,
public: true,
},
},
segments: {
segment_eq_1: {
sql: "(segment = 1)",
},
},
});
6 changes: 6 additions & 0 deletions packages/cubejs-testing/test/smoke-cubesql.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -291,5 +291,11 @@ from
const res = await connection.query(query);
expect(res.rows).toEqual([{ max: null }]);
});

test('where segment is false', async () => {
const query = 'SELECT value AS val, * FROM "SegmentTest" WHERE segment_eq_1 IS FALSE ORDER BY value;';
const res = await connection.query(query);
expect(res.rows.map((x) => x.val)).toEqual([789, 987]);
});
});
});
5 changes: 4 additions & 1 deletion rust/cubesql/cubesql/src/compile/engine/df/wrapper.rs
Original file line number Diff line number Diff line change
Expand Up @@ -923,7 +923,10 @@ impl CubeScanWrapperNode {

let alias = if can_rename_columns {
let alias = expr_name(&expr, &schema)?;
let mut truncated_alias = non_id_regex.replace_all(&alias, "_").to_lowercase();
let mut truncated_alias = non_id_regex
.replace_all(&alias, "_")
.trim_start_matches("_")
.to_lowercase();
truncated_alias.truncate(16);
let mut alias = truncated_alias.clone();
for i in 1..10000 {
Expand Down
4 changes: 2 additions & 2 deletions rust/cubesql/cubesql/src/compile/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -20456,8 +20456,8 @@ ORDER BY "source"."str0" ASC
.wrapped_sql
.unwrap()
.sql
.contains("\\\"cube_name\\\":\\\"KibanaSampleDataEcommerce\\\",\\\"alias\\\":\\\"__user\\\""),
r#"SQL contains `\"cube_name\":\"KibanaSampleDataEcommerce\",\"alias\":\"__user\"` {}"#,
.contains("\\\"cube_name\\\":\\\"KibanaSampleDataEcommerce\\\",\\\"alias\\\":\\\"user\\\""),
r#"SQL contains `\"cube_name\":\"KibanaSampleDataEcommerce\",\"alias\":\"user\"` {}"#,
logical_plan
.find_cube_scan_wrapper()
.wrapped_sql
Expand Down

0 comments on commit 24e8977

Please sign in to comment.