Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,23 @@
### Release [x.x.x]

#### Improvements
* Add Certificate Authority root support for httpclient and nativeclient using `ca_cert` parameter

### Release [1.9.2], 2025-06-03

#### Bugs
* Limit dbt-core version to <1.10.X to avoid compatibility issues ([#453](https://github.com/ClickHouse/dbt-clickhouse/pull/453))
* README file was broken and fixed in ([#454](https://github.com/ClickHouse/dbt-clickhouse/pull/454))
* Snapshots were not worked properly on cluster, fixed in ([#455](https://github.com/ClickHouse/dbt-clickhouse/pull/455))
* when the last line of a model's SQL query is a comment (-- some comment) and the table's contract is enforced, the last parenthesis of the wrapping subquery ends up commented as well. Was fixed in ([#457](https://github.com/ClickHouse/dbt-clickhouse/pull/457))
* Check for Shared database engine in can_exchange ([#460](https://github.com/ClickHouse/dbt-clickhouse/pull/460))
* Tests were broken because of docker compose version `2.35` and fixed in ([#468](https://github.com/ClickHouse/dbt-clickhouse/pull/468))

### Release [1.9.1], 2025-04-28

#### Bugs
* Fix missing database_engine error ([#450](https://github.com/ClickHouse/dbt-clickhouse/pull/450))

### Release [1.9.0], 2025-04-28

#### New Features
Expand Down
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,7 @@ your_profile_name:
secure: [False] # Use TLS (native protocol) or HTTPS (http protocol)
client_cert: [null] # Path to a TLS client certificate in .pem format
client_cert_key: [null] # Path to the private key for the TLS client certificate
ca_cert: [null] # Path to Certificate Authority root to validate ClickHouse server certificate
retries: [1] # Number of times to retry a "retriable" database exception (such as a 503 'Service Unavailable' error)
compression: [<empty string>] # Use gzip compression if truthy (http), or compression type for a native connection
connect_timeout: [10] # Timeout in seconds to establish a connection to ClickHouse
Expand Down
2 changes: 2 additions & 0 deletions dbt/adapters/clickhouse/credentials.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ class ClickHouseCredentials(Credentials):
verify: bool = True
client_cert: Optional[str] = None
client_cert_key: Optional[str] = None
ca_cert: Optional[str] = None
connect_timeout: int = 10
send_receive_timeout: int = 300
sync_request_timeout: int = 5
Expand Down Expand Up @@ -77,6 +78,7 @@ def _connection_keys(self):
'verify',
'client_cert',
'client_cert_key',
'ca_cert',
'connect_timeout',
'send_receive_timeout',
'sync_request_timeout',
Expand Down
1 change: 1 addition & 0 deletions dbt/adapters/clickhouse/httpclient.py
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,7 @@ def _create_client(self, credentials):
verify=credentials.verify,
client_cert=credentials.client_cert,
client_cert_key=credentials.client_cert_key,
ca_cert=credentials.ca_cert,
query_limit=0,
settings=self._conn_settings,
)
Expand Down
1 change: 1 addition & 0 deletions dbt/adapters/clickhouse/nativeclient.py
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@ def _create_client(self, credentials: ClickHouseCredentials):
verify=credentials.verify,
certfile=credentials.client_cert,
keyfile=credentials.client_cert_key,
ca_certs=credentials.ca_cert,
connect_timeout=credentials.connect_timeout,
send_receive_timeout=credentials.send_receive_timeout,
sync_request_timeout=credentials.sync_request_timeout,
Expand Down