Skip to content

Commit 4ebd0e6

Browse files
authored
Merge branch 'master' into returnUsedPreAggregation
2 parents 09316cf + a64272e commit 4ebd0e6

File tree

238 files changed

+16714
-1551
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

238 files changed

+16714
-1551
lines changed
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
#!/bin/bash
2+
set -eo pipefail
3+
4+
# Debug log for test containers
5+
export DEBUG=testcontainers
6+
7+
export TEST_VERTICA_VERSION=12.0.4-0
8+
9+
echo "::group::Vertica ${TEST_VERTICA_VERSION}"
10+
docker pull vertica/vertica-ce:${TEST_VERTICA_VERSION}
11+
yarn lerna run --concurrency 1 --stream --no-prefix integration:vertica
12+
echo "::endgroup::"

.github/actions/smoke.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,10 @@ echo "::group::MongoBI"
5757
yarn lerna run --concurrency 1 --stream --no-prefix smoke:mongobi
5858
echo "::endgroup::"
5959

60+
echo "::group::Vertica"
61+
yarn lerna run --concurrency 1 --stream --no-prefix smoke:vertica
62+
echo "::endgroup::"
63+
6064
echo "::group::RBAC"
6165
yarn lerna run --concurrency 1 --stream --no-prefix smoke:rbac
6266
echo "::endgroup::"

.github/workflows/drivers-tests.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ on:
2424
- 'packages/cubejs-mysql-driver/**'
2525
- 'packages/cubejs-postgres-driver/**'
2626
- 'packages/cubejs-snowflake-driver/**'
27+
- 'packages/cubejs-vertica-driver/**'
2728

2829
# To test SQL API Push down
2930
- 'packages/cubejs-backend-native/**'
@@ -49,6 +50,7 @@ on:
4950
- 'packages/cubejs-mysql-driver/**'
5051
- 'packages/cubejs-postgres-driver/**'
5152
- 'packages/cubejs-snowflake-driver/**'
53+
- 'packages/cubejs-vertica-driver/**'
5254

5355
# To test SQL API Push down
5456
- 'packages/cubejs-backend-native/**'

.github/workflows/push.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -336,7 +336,7 @@ jobs:
336336
node-version: [20.x]
337337
db: [
338338
'clickhouse', 'druid', 'elasticsearch', 'mssql', 'mysql', 'postgres', 'prestodb',
339-
'mysql-aurora-serverless', 'crate', 'mongobi', 'firebolt', 'dremio'
339+
'mysql-aurora-serverless', 'crate', 'mongobi', 'firebolt', 'dremio', 'vertica'
340340
]
341341
fail-fast: false
342342

.yarnrc.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
nodeLinker: node-modules

CHANGELOG.md

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,68 @@
33
All notable changes to this project will be documented in this file.
44
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
55

6+
## [1.1.15](https://github.com/cube-js/cube/compare/v1.1.14...v1.1.15) (2025-01-13)
7+
8+
9+
### Bug Fixes
10+
11+
* **cubesql:** Add folders to Cube Metadata ([#9089](https://github.com/cube-js/cube/issues/9089)) ([8d714d6](https://github.com/cube-js/cube/commit/8d714d6637862b36024aee5c3857267c0c167dbf))
12+
13+
14+
15+
16+
17+
## [1.1.14](https://github.com/cube-js/cube/compare/v1.1.13...v1.1.14) (2025-01-09)
18+
19+
20+
### Bug Fixes
21+
22+
* **cubesql:** add title field to Dimension Metadata ([#9084](https://github.com/cube-js/cube/issues/9084)) ([9653a23](https://github.com/cube-js/cube/commit/9653a23d9f477b391627755a533b2d6e8eae5656))
23+
24+
25+
26+
27+
28+
## [1.1.13](https://github.com/cube-js/cube/compare/v1.1.12...v1.1.13) (2025-01-09)
29+
30+
31+
### Bug Fixes
32+
33+
* **clickhouse-driver:** Support overriding Username & Password from Driver Config ([#9085](https://github.com/cube-js/cube/issues/9085)) ([c5aa6cc](https://github.com/cube-js/cube/commit/c5aa6cc4aca0c22dacd24253fe116f8619f96601))
34+
* **cubejs-cli:** Fix content type and body after switching from request to node-fetch ([#9088](https://github.com/cube-js/cube/issues/9088)) ([bf332ef](https://github.com/cube-js/cube/commit/bf332ef6761e8354115cc485d7d762abc9268181))
35+
* **schema-compiler:** Handle member expressions in keyDimensions ([#9083](https://github.com/cube-js/cube/issues/9083)) ([056a1d8](https://github.com/cube-js/cube/commit/056a1d88b4fd8055575dbb07967bc64b7065ce86))
36+
37+
38+
39+
40+
41+
## [1.1.12](https://github.com/cube-js/cube/compare/v1.1.11...v1.1.12) (2025-01-09)
42+
43+
44+
### Bug Fixes
45+
46+
* **api-gateway:** fix DAP RLS issue with denied queries and python conf ([#9054](https://github.com/cube-js/cube/issues/9054)) ([e661d2a](https://github.com/cube-js/cube/commit/e661d2af432f57f1109a3a24f91ea0ef0fe2af6c))
47+
* **backend-native:** Fix request sequence span ids ([#9077](https://github.com/cube-js/cube/issues/9077)) ([d48ef99](https://github.com/cube-js/cube/commit/d48ef99548d49ae0e9aa25ae052b3c432bd752f6))
48+
* **backend-native:** Pass req.securityContext to Python config ([#9049](https://github.com/cube-js/cube/issues/9049)) ([95021f2](https://github.com/cube-js/cube/commit/95021f277967ad88e783f766b2e546e3e6ebebf2))
49+
* **cubejs-client-core:** hierarchy typings ([#9042](https://github.com/cube-js/cube/issues/9042)) ([7c38845](https://github.com/cube-js/cube/commit/7c38845388fde0939423f0c35cf65cf1d67c1c36))
50+
* **dremio-driver:** Fix stale version of testing-shared dependency ([#9079](https://github.com/cube-js/cube/issues/9079)) ([ee826e1](https://github.com/cube-js/cube/commit/ee826e10c4e1a078083d32580a5d63bcdeb16628))
51+
* **schema-compiler:** fix time dimension granularity origin formatting in local timezone ([#9071](https://github.com/cube-js/cube/issues/9071)) ([c97526f](https://github.com/cube-js/cube/commit/c97526ff9145195786d4ec9617bcf298567bce7e))
52+
* **tesseract:** sqlAlias support ([f254f64](https://github.com/cube-js/cube/commit/f254f641f6f084f4f6dfc1a5d0d90e0c6f8be9cf))
53+
54+
55+
### Features
56+
57+
* **cubejs-client-core:** Fill missing dates with custom measure value ([#8843](https://github.com/cube-js/cube/issues/8843)) ([ed3f6c9](https://github.com/cube-js/cube/commit/ed3f6c9b00f48889843080e800e4321d939ce5ec))
58+
* **cubesql:** Penalize zero members in wrapper ([#8927](https://github.com/cube-js/cube/issues/8927)) ([171ea35](https://github.com/cube-js/cube/commit/171ea351e739f705ddbf0d803a34b944cb8c9da5))
59+
* **duckdb-driver:** Add support for installing and loading DuckDB Extensions. ([#8744](https://github.com/cube-js/cube/issues/8744)) ([0e6ecd9](https://github.com/cube-js/cube/commit/0e6ecd925fc342bd4ac692e3ee364f29ee6b20df))
60+
* **server-core:** Support for scheduledRefreshTimeZones as function, passing securityContext ([#9002](https://github.com/cube-js/cube/issues/9002)) ([10e47fc](https://github.com/cube-js/cube/commit/10e47fc5472a3532a8f40f6f980f9802536a39de))
61+
* **tesseract:** Make measure an entry point for multi-fact join for now and support template for params ([#9053](https://github.com/cube-js/cube/issues/9053)) ([cb507c1](https://github.com/cube-js/cube/commit/cb507c1ab345828435d192d1f783998bbc5130b3))
62+
* **vertica-driver:** Introduce VerticaDriver ([#9081](https://github.com/cube-js/cube/issues/9081)) ([c43340d](https://github.com/cube-js/cube/commit/c43340d9cc7d06d7caea4803b4d6e00a3e82acdf)), closes [#2](https://github.com/cube-js/cube/issues/2) [#5](https://github.com/cube-js/cube/issues/5) [#6](https://github.com/cube-js/cube/issues/6)
63+
64+
65+
66+
67+
668
## [1.1.11](https://github.com/cube-js/cube/compare/v1.1.10...v1.1.11) (2024-12-16)
769

870

docs/pages/guides/dbt.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -299,7 +299,7 @@ cubes:
299299
type: count
300300

301301
- name: statuses
302-
sql: "STRING_AGG({status})"
302+
sql: "STRING_AGG({status}, ',')"
303303
type: string
304304

305305
# Model-specific joins

docs/pages/product/apis-integrations/rest-api/query-format.mdx

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -520,8 +520,11 @@ only one of the following properties:
520520
}
521521
```
522522

523-
> **Note:** You can not put dimensions and measures filters in the same logical
524-
> operator.
523+
**You can not put dimensions and measures filters in the same logical operator.**
524+
When Cube generates a SQL query to the data source, dimension and measure filters
525+
are translated to expressions in `WHERE` and `HAVING` clauses, respectively.
526+
In other words, dimension filters apply to raw (unaggregated) data and measure filters
527+
apply to aggregated data, so it's not possible to express such filters in SQL semantics.
525528

526529
## Time Dimensions Format
527530

docs/pages/product/configuration/data-sources.mdx

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,11 @@ sources][ref-config-multi-data-src] out of the box.
5959
imageUrl="https://static.cube.dev/icons/firebolt.svg"
6060
title="Firebolt"
6161
/>
62+
<GridItem
63+
url="data-sources/vertica"
64+
imageUrl="https://static.cube.dev/icons/vertica.svg"
65+
title="Vertica"
66+
/>
6267
</Grid>
6368

6469
## Query engines
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
# Vertica
2+
3+
## Prerequisites
4+
5+
- The hostname for the [Vertica][vertica] database server
6+
- The username/password for the [Vertica][vertica] database server
7+
- The name of the database to use within the [Vertica][vertica] database server
8+
9+
## Setup
10+
11+
### Manual
12+
13+
Add the following to a `.env` file in your Cube project:
14+
15+
```dotenv
16+
CUBEJS_DB_TYPE=vertica
17+
CUBEJS_DB_HOST=my.vertica.host
18+
CUBEJS_DB_USER=vertica_user
19+
CUBEJS_DB_PASS=**********
20+
CUBEJS_DB_SCHEMA=my_vertica_schema
21+
```
22+
23+
## Environment Variables
24+
25+
| Environment Variable | Description | Possible Values | Required |
26+
| -------------------------- | ----------------------------------------------------------------------------------- | --------------------------------------------- | :------: |
27+
| `CUBEJS_DB_HOST` | The host URL for a database | A valid database host URL ||
28+
| `CUBEJS_DB_PORT` | The port for the database connection | A valid port number ||
29+
| `CUBEJS_DB_USER` | The username used to connect to the database | A valid database username ||
30+
| `CUBEJS_DB_PASS` | The password used to connect to the database | A valid database password ||
31+
| `CUBEJS_DB_SCHEMA` | The schema within the database to connect to | A valid schema name within a Presto database ||
32+
| `CUBEJS_DB_SSL` | If `true`, enables SSL encryption for database connections from Cube | `true`, `false` ||
33+
| `CUBEJS_CONCURRENCY` | The number of concurrent connections each queue has to the database. Default is `2` | A valid number ||
34+
| `CUBEJS_DB_MAX_POOL` | The maximum number of concurrent database connections to pool. Default is `8` | A valid number ||
35+
36+
37+
## SSL
38+
39+
To enable SSL-encrypted connections between Cube and Verica, set the
40+
`CUBEJS_DB_SSL` environment variable to `true`. For more information on how to
41+
configure custom certificates, please check out [Enable SSL Connections to the
42+
Database][ref-recipe-enable-ssl].
43+
44+
[vertica]: https://www.vertica.com/documentation/vertica/all/
45+
[ref-recipe-enable-ssl]:/guides/recipes/data-sources/using-ssl-connections-to-data-source
46+

0 commit comments

Comments
 (0)