Closes: https://github.com/ClickHouse/ClickHouse/issues/103654 Closes: https://github.com/ClickHouse/ClickHouse/issues/103116 Related: https://github.com/ClickHouse/ClickHouse/pull/96675 Related: https://github.com/ClickHouse/ClickHouse/issues/79110 ## Problem `NO_SUCH_COLUMN_IN_TABLE` naming a column that is **not** in the table, when reading or merging a p
Related: https://github.com/ClickHouse/ClickHouse/pull/110283 ### Summary Follow up on review feedback from #110283: - clarify the range-analysis, exact-empty, STREAM, and statistics-cache contracts; - document what `ConditionSelectivityEstimator::isStale()` compares; - remove cross-component implementation references from optimizer comments; - make the perf
### Changelog category (leave one): - Improvement ### Changelog entry (a [user-readable short description](https://github.com/ClickHouse/ClickHouse/blob/master/docs/changelog_entry_guidelines.md) of the changes that goes into CHANGELOG.md): Added client-side commands `/dialect`, `/lang`, `/language` to `clickhouse-client` and `clickhouse-local` — an equivale
### Changelog category (leave one): - Not for changelog (changelog entry is not required) ### Documentation entry for user-facing changes The help message of `clickhouse-git-import` referenced the presentation at `https://presentations.clickhouse.com/matemarketing_2020/`. Replace it with `https://presentations.clickhouse.com/2020-matemarketing/`. <!-- ch-ver
Related: https://github.com/ClickHouse/ClickHouse/pull/68493 Related: https://github.com/ClickHouse/ClickHouse/issues/58394 Adds two ways to run MongoDB queries against ClickHouse: - a **wire protocol endpoint** (`mongo_port`), so MongoDB drivers and tools such as `pymongo` and `mongosh` can connect to ClickHouse as if it were a MongoDB server; - a **query d
Original pull-request https://github.com/ClickHouse/ClickHouse/pull/107028 This pull-request is a last step of an automated backporting. Treat it as a standard pull-request: look at the checks and resolve conflicts. Merge it only if you intend to backport changes to the target branch, otherwise just close it. ### The PR source The PR is created in the [CI jo
<!-- Linked issues and pull requests. Use full GitHub URLs, one relationship per line; delete the lines you don't need. Closes: https://github.com/ClickHouse/ClickHouse/issues/NNNNN (auto-closes the issue when this PR is merged into the default branch) Related: https://github.com/ClickHouse/ClickHouse/pull/NNNNN --> ### Changelog category (leave one): - Not
importance 1@chhetripradeepclosedpr-not-for-changelogcan be testedpr-synced-to-cloudOriginal evidence ↗
_Test-only PR. Review: are the gaps real, is the test right._ Adds test coverage for 1 untested code path, found during automated review of [PR #112172](https://github.com/ClickHouse/ClickHouse/pull/112172). That PR: Rewrites the write path of bucketed `JSON` shared data. `splitSharedDataPathsToBuckets` and `flattenAndBucketSharedDataPaths` are replaced by a
importance 1@clickgapaiopenpr-not-for-changelogcan be testedOriginal evidence ↗
> ⚠️ **Experimental prototype — heavy LLM assistance.** > > This PR is an early prototype built with substantial LLM assistance > (GitHub Copilot CLI). Early draft, sharing for searchability and > to use CI support. ## Summary Adds a new session-level `UInt64` setting **`mutations_restrict`** that acts as a safety catch against accidental mutations. Modeled
Related: https://github.com/ClickHouse/ClickHouse/pull/114562 ## Problem A column that is renamed, dropped and added again in one `ALTER` silently returns the **dropped** column's data instead of its own default, while the mutation is still pending: ```sql CREATE TABLE t (a UInt64, h UInt8 DEFAULT 0) ENGINE = MergeTree ORDER BY tuple() SETTINGS min_bytes_for
This pull request is opened automatically by the nightly documentation autogeneration workflow. It regenerates settings, functions, table and database engines, data types, formats, table functions, window functions, system tables, and asynchronous metrics from the structured documentation embedded in the ClickHouse source and exposed through the correspondin
Related: https://github.com/ClickHouse/ClickHouse/pull/113947 Related: https://github.com/ClickHouse/ClickHouse/pull/110615 Port of the #113947 narrowing (MySQL) to `StoragePostgreSQL::getSSLParams`. An empty `ssl*_pem` query override is rejected only when it would actually drop a TLS credential the named collection carries — a path (a query cannot override
<!-- A technical comment, you are free to remove or leave it as it is when PR is created The following categories are used in the next scripts, update them accordingly utils/changelog/changelog.py tests/ci/cancel_and_rerun_workflow_lambda/app.py --> ### Changelog category (leave one): - Bug Fix (user-visible misbehavior in an official stable release) ### Cha
Related: https://github.com/ClickHouse/ClickHouse/pull/104948 `04780_json_subcolumn_index_match_not_quadratic` compares `MemoryAllocatedWithoutCheckBytes` of a dotted-constant `EXPLAIN indexes = 1` against a no-dots control with a 150% threshold, measuring each arm with a single query. A single run is not a stable oracle: whichever query happens to be the fi
Reworks the `diff-review` skill in `.claude/skills/diff-review` — the local in-browser diff review that Claude Code serves before a commit or a PR. Heads-up: I tailored this to how *I* like to review, so please treat it as a suggestion rather than a standard. Check the branch out, run it on one of your own diffs, and keep it only if you find it helpful. What
Related: https://github.com/ClickHouse/ClickHouse/pull/112358 CI cache reuse in praktika keyed the reuse decision off the branch that produced a record. Branch, though, was only ever a proxy for how much a record can be trusted. This gates reuse on the producing **workflow event** instead and ignores the branch entirely in the reuse decision. Correctness is
<!-- CURSOR_AGENT_PR_BODY_BEGIN --> Closes: https://github.com/ClickHouse/ClickHouse/issues/106208 Related: https://github.com/ClickHouse/ClickHouse/pull/110072 `addValue` set a bit when the computed sum bit was 1 but never cleared it when the sum bit was 0, so every carry left the lower bit set and the write path was not addition: ```sql SELECT numericIndex
Closes: https://github.com/ClickHouse/ClickHouse/issues/111898 The `dpsub` join-order algorithm silently dropped single-table filter and constant predicates that live in a `JOIN ... ON` clause (e.g. `t1.value = 'x'`), returning extra rows. `greedy` uses a different placement path and was unaffected. The predicates are placed in `collectJoinEdgesMask`. Two pl
Closes: https://github.com/ClickHouse/ClickHouse/issues/114603 ### Changelog category (leave one): - Bug Fix (user-visible misbehavior in an official stable release) ### Changelog entry (a [user-readable short description](https://github.com/ClickHouse/ClickHouse/blob/master/docs/changelog_entry_guidelines.md) of the changes that goes into CHANGELOG.md): Fix
Document the recommended filters for analyzing `system.query_log`. The page now explains that `is_initial_query = 1` selects top-level client queries, while `initial_query_id` correlates the full cascade of a distributed query across nodes. The existing basic example also filters for initial queries so child executions are not treated as separate client quer
Reverts https://github.com/ClickHouse/ClickHouse/pull/114178, restoring the `nats_credentials` setting of the `NATS` table engine (originally added in https://github.com/ClickHouse/ClickHouse/pull/110733), and fixes the reason of the original revert: the possibility of referencing arbitrary server paths through `nats_credential_file`. `nats_credential_file`
<!-- Linked issues and pull requests. Use full GitHub URLs, one relationship per line; delete the lines you don't need. Closes: https://github.com/ClickHouse/ClickHouse/issues/NNNNN (auto-closes the issue when this PR is merged into the default branch) Related: https://github.com/ClickHouse/ClickHouse/pull/NNNNN --> ### Changelog category (leave one): - Docu
This clarifies how `PREWHERE` behaves in queries with `JOIN`. It removes the misleading claim that `SELECT` clauses follow a single execution order, clearly states the single-table restriction, and adds a runnable minimal example with expected output. ### Changelog category (leave one): - Documentation (changelog entry is not required) ### Changelog entry (a
<!-- Linked issues and pull requests. Use full GitHub URLs, one relationship per line; delete the lines you don't need. Related: https://github.com/ClickHouse/ClickHouse/pull/112975 --> ### Changelog category (leave one): - Bug Fix (user-visible misbehavior in an official stable release) ### Changelog entry (a [user-readable short description](https://github
Automated daily preparation of `CHANGELOG.md` for the upcoming 26.8 release. Every day the `NightlyChangelog` CI job appends the raw changelog entries for the pull requests newly merged into `master` (generated with `utils/changelog/changelog.py`) as one commit, and edits them following `.claude/skills/edit-changelog/SKILL.md` as a separate commit, so both t
importance 0@clickhouse-gh[bot]opendo not testpr-not-for-changelogOriginal evidence ↗
Original pull-request https://github.com/ClickHouse/ClickHouse/pull/109932 This pull-request is a last step of an automated backporting. Treat it as a standard pull-request: look at the checks and resolve conflicts. Merge it only if you intend to backport changes to the target branch, otherwise just close it. ### The PR source The PR is created in the [CI jo
Original pull-request https://github.com/ClickHouse/ClickHouse/pull/110019 Cherry-pick pull-request https://github.com/ClickHouse/ClickHouse/pull/112549 This pull-request is a last step of an automated backporting. Treat it as a standard pull-request: look at the checks and resolve conflicts. Merge it only if you intend to backport changes to the target bran
### Changelog category (leave one): - Improvement ### Changelog entry (a [user-readable short description](https://github.com/ClickHouse/ClickHouse/blob/master/docs/changelog_entry_guidelines.md) of the changes that goes into CHANGELOG.md): 64-bit hash function is used now for external nullable fixed-width aggregation methods (avoids collision disaster for v
Original pull-request https://github.com/ClickHouse/ClickHouse/pull/112601 This pull-request is a last step of an automated backporting. Treat it as a standard pull-request: look at the checks and resolve conflicts. Merge it only if you intend to backport changes to the target branch, otherwise just close it. ### The PR source The PR is created in the [CI jo
Original pull-request https://github.com/ClickHouse/ClickHouse/pull/113509 Cherry-pick pull-request https://github.com/ClickHouse/ClickHouse/pull/114240 This pull-request is a last step of an automated backporting. Treat it as a standard pull-request: look at the checks and resolve conflicts. Merge it only if you intend to backport changes to the target bran
<!-- Linked issues and pull requests. Use full GitHub URLs, one relationship per line; delete the lines you don't need. Closes: https://github.com/ClickHouse/ClickHouse/issues/NNNNN (auto-closes the issue when this PR is merged into the default branch) Related: https://github.com/ClickHouse/ClickHouse/pull/NNNNN --> TODO ### Changelog category (leave one): -
Original pull-request https://github.com/ClickHouse/ClickHouse/pull/102033 This pull-request is a last step of an automated backporting. Treat it as a standard pull-request: look at the checks and resolve conflicts. Merge it only if you intend to backport changes to the target branch, otherwise just close it. ### The PR source The PR is created in the [CI jo
Original pull-request https://github.com/ClickHouse/ClickHouse/pull/111930 Cherry-pick pull-request https://github.com/ClickHouse/ClickHouse/pull/114290 This pull-request is a last step of an automated backporting. Treat it as a standard pull-request: look at the checks and resolve conflicts. Merge it only if you intend to backport changes to the target bran
### Changelog category (leave one): - Bug Fix (user-visible misbehavior in an official stable release) ### Changelog entry (a user-readable short description of the changes that goes into CHANGELOG.md): Accept signed numeric timestamps in PromQL @ modifiers. ### Summary PromQL allows an optional `+` or `-` sign before a numeric timestamp in an `@` modifier.
importance 0@fallintoplaceopenpr-bugfixsubmodule changedmanual approvecan be testedcomp-promqlOriginal evidence ↗
Original pull-request https://github.com/ClickHouse/ClickHouse/pull/112479 This pull-request is a last step of an automated backporting. Treat it as a standard pull-request: look at the checks and resolve conflicts. Merge it only if you intend to backport changes to the target branch, otherwise just close it. ### The PR source The PR is created in the [CI jo
Original pull-request https://github.com/ClickHouse/ClickHouse/pull/112479 This pull-request is a last step of an automated backporting. Treat it as a standard pull-request: look at the checks and resolve conflicts. Merge it only if you intend to backport changes to the target branch, otherwise just close it. ### The PR source The PR is created in the [CI jo
When the same column is used in both `PREWHERE` and `WHERE` conditions, it must not be removed, since `PREWHERE` is executed before `WHERE`. Even if a `WHERE` filter column is rewritten into a text index virtual column, it still has to be read to apply the `PREWHERE` condition. To fix it, now every column still required by the `PREWHERE` is kept in the read
Original pull-request https://github.com/ClickHouse/ClickHouse/pull/113289 This pull-request is a last step of an automated backporting. Treat it as a standard pull-request: look at the checks and resolve conflicts. Merge it only if you intend to backport changes to the target branch, otherwise just close it. ### The PR source The PR is created in the [CI jo
### Changelog category (leave one): - Improvement ### Changelog entry (a [user-readable short description](https://github.com/ClickHouse/ClickHouse/blob/master/docs/changelog_entry_guidelines.md) of the changes that goes into CHANGELOG.md): Allow to create table without providing credentials if catalog specified. Earlier the query to create table looked like
Though note that the server was still active, not sure why (since it got SIGTRAP, maybe some deadlock in sanitizers build). Fixes: https://pastila.nl/?004f7797/8607b82ba8c324e4f5081e6c747ad583#ad4mwd7GRSHyUgNa46pJHw==GCM ### Changelog category (leave one): - Not for changelog (changelog entry is not required) <!-- ch-version-info:start --> ### Version info -
Original pull-request https://github.com/ClickHouse/ClickHouse/pull/113484 Cherry-pick pull-request https://github.com/ClickHouse/ClickHouse/pull/114488 This pull-request is a last step of an automated backporting. Treat it as a standard pull-request: look at the checks and resolve conflicts. Merge it only if you intend to backport changes to the target bran
<!-- Linked issues and pull requests. Use full GitHub URLs, one relationship per line; delete the lines you don't need. Closes: https://github.com/ClickHouse/ClickHouse/issues/NNNNN (auto-closes the issue when this PR is merged into the default branch) Related: https://github.com/ClickHouse/ClickHouse/pull/NNNNN --> ### Changelog category (leave one): - Bug
…om SCIM docs SCIM for CHC is GA <!-- Linked issues and pull requests. Use full GitHub URLs, one relationship per line; delete the lines you don't need. Closes: https://github.com/ClickHouse/ClickHouse/issues/NNNNN (auto-closes the issue when this PR is merged into the default branch) Related: https://github.com/ClickHouse/ClickHouse/pull/NNNNN --> ### Chang
importance 0@ohlookadollaropenpr-documentationcan be testedOriginal evidence ↗
Original pull-request https://github.com/ClickHouse/ClickHouse/pull/102033 Cherry-pick pull-request https://github.com/ClickHouse/ClickHouse/pull/114386 This pull-request is a last step of an automated backporting. Treat it as a standard pull-request: look at the checks and resolve conflicts. Merge it only if you intend to backport changes to the target bran
The settings explorers and documentation badges rendered root-relative links that already contained the production `/docs` mount. Mintlify prepended the mount again, producing broken `/docs/docs/...` destinations. Use fully qualified ClickHouse documentation URLs for the generated settings explorers and all localized badge variants. Example: https://clickhou
Related: https://github.com/ClickHouse/ClickHouse/issues/113284 ### Changelog category (leave one): - Documentation (changelog entry is not required) --- ClickStack's docs claim the ability to "independently isolate read and write workloads with Warehouses" in five places without documenting how. The only existing guidance (in `deployment/managed`, added in
### Changelog category (leave one): - Bug Fix (user-visible misbehavior in an official stable release) ### Changelog entry (a user-readable short description of the changes that goes into CHANGELOG.md): Support quoted label names in PromQL grouping modifiers. ### Summary Prometheus accepts quoted label names in grouping modifiers. ClickHouse previously only
importance 0@fallintoplacepr-bugfixsubmodule changedmanual approvecan be testedcomp-promqlOriginal evidence ↗