-
Notifications
You must be signed in to change notification settings - Fork 451
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'main' into read-committed-24.1
- Loading branch information
Showing
68 changed files
with
1,636 additions
and
368 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,58 @@ | ||
## v23.1.21 | ||
|
||
Release Date: May 7, 2024 | ||
|
||
{% include releases/new-release-downloads-docker-image.md release=include.release %} | ||
|
||
<h3 id="v23-1-21-sql-language-changes">SQL language changes</h3> | ||
|
||
- The `FORCE_INVERTED_INDEX` hint causes the [optimizer]({% link v23.1/cost-based-optimizer.md %}) to prefer a query plan scan over any [inverted index]({% link v23.1/inverted-indexes.md %}) of the hinted table. An error is emitted if no such query plan can be generated. [#122301][#122301] | ||
- Introduced three new [cluster settings]({% link v23.1/cluster-settings.md %}) for controlling [table statistics]({% link v23.1/cost-based-optimizer.md %}#table-statistics) forecasting: | ||
- [`sql.stats.forecasts.min_observations`]({% link v23.1/cluster-settings.md %}#setting-sql-stats-forecasts-min-observations) is the minimum number of observed statistics required to produce a forecast. | ||
- [`sql.stats.forecasts.min_goodness_of_fit`]({% link v23.1/cluster-settings.md %}#setting-sql-stats-forecasts-min-goodness-of-fit) is the minimum R² (goodness of fit) measurement required from all predictive models to use a forecast. | ||
- [`sql.stats.forecasts.max_decrease`]({% link v23.1/cluster-settings.md %}#setting-sql-stats-forecasts-max-decrease) is the most a prediction can decrease, expressed as the minimum ratio of the prediction to the lowest prior observation. [#122990][#122990] | ||
- Added a [session variable]({% link v23.1/set-vars.md %}) `optimizer_use_improved_multi_column_selectivity_estimate`, which if enabled, causes the [optimizer]({% link v23.1/cost-based-optimizer.md %}) to use an improved selectivity estimate for multi-column predicates. This setting will default to `true` on v24.2 and later, and `false` on prior versions. [#123068][#123068] | ||
|
||
<h3 id="v23-1-21-operational-changes">Operational changes</h3> | ||
|
||
- A minimum [Raft scheduler]({% link v23.1/architecture/replication-layer.md %}#raft) concurrency is now enforced per [store]({% link v23.1/architecture/storage-layer.md %}#overview) so that nodes with many stores do not spread workers too thinly. This helps to avoid high scheduler latency across replicas on a store when load is imbalanced. [#120797][#120797] | ||
|
||
<h3 id="v23-1-21-bug-fixes">Bug fixes</h3> | ||
|
||
- Fixed a bug introduced in v22.2.9 that could cause a slow memory leak that can accumulate when opening many new connections. [#121056][#121056] | ||
- [Sequence]({% link v23.1/create-sequence.md %}) options for `NO MINVALUE` and `NO MAXVALUE` now match [PostgreSQL behavior](https://www.postgresql.org/docs/current/sql-createsequence.html). Sequence `MINVALUE` and `MAXVALUE` now automatically adjust to the bounds of a new integer type in [`ALTER SEQUENCE ... AS`]({% link v23.1/alter-sequence.md %}), matching PostgreSQL behavior. [#121307][#121307] | ||
- Fixed a bug where the [timeseries graphs shown on the **SQL Activity Statement Fingerprint** page]({% link v23.1/ui-statements-page.md %}#charts) in the [DB Console]({% link v23.1/ui-overview.md %}) were not rendering properly. This involved fixing a bug related to setting the time range of the charts. [#121382][#121382] [#122235][#122235] | ||
- Fixed a bug where CockroachDB could incorrectly evaluate `IN` expressions that had `INT2` or `INT4` type on the left side, and values on the right side that were outside the range of the left side. The bug had been present since at least v21.1. [#121955][#121955] | ||
- Previously, on long-running [sessions]({% link v23.1/show-sessions.md %}) that issue many (hundreds of thousands or more) [transactions]({% link v23.1/transactions.md %}), CockroachDB's internal memory accounting system, the limit for which is configured via the [`--max-sql-memory` flag]({% link v23.1/cockroach-start.md %}#general) could leak. This bug, in turn, could result in the error message `"root: memory budget exceeded"` for other queries. The bug was present in v23.1.17 and is now fixed. [#121949][#121949] [#122235][#122235] | ||
- Reintroduced [cluster setting]({% link v23.1/cluster-settings.md %}) `sql.auth.modify_cluster_setting_applies_to_all.enabled` so that mixed-version clusters can migrate off of this setting, which is deprecated in favor of the privilege [`MODIFYSQLCLUSTERSETTING`]({% link v23.1/set-cluster-setting.md %}#required-privileges). [#122055][#122055] [#122635][#122635] | ||
- Fixed a bug where a [`GRANT ... ON ALL TABLES`]({% link v23.1/grant.md %}) statement could fail if sequences existed and they did not support a privilege (e.g., `BACKUP`). [#122057][#122057] | ||
- Fixed a bug where [client certificate authentication]({% link v23.1/authentication.md %}#client-authentication) combined with [identity maps]({% link v23.1/sso-sql.md %}#identity-map-configuration) (`server.identity_map.configuration`) did not work. For the feature to work correctly, the client must specify a valid database user in the [connection string]({% link v23.1/connection-parameters.md %}). This bug had been present since v23.1. [#122746][#122746] | ||
- Statistics forecasts of zero rows can cause suboptimal [query plans]({% link v23.1/cost-based-optimizer.md %}). Forecasting will now avoid predicting zero rows for most downward-trending statistics. [#122990][#122990] | ||
|
||
<h3 id="v23-1-21-performance-improvements">Performance improvements</h3> | ||
|
||
- More efficient [query plans]({% link v23.1/cost-based-optimizer.md %}) are now generated for queries with text similarity filters, for example, `text_col % 'foobar'`. These plans are generated if the `optimizer_use_trigram_similarity_optimization` [session setting]({% link v23.1/set-vars.md %}) is enabled. It is disabled by default. [#122683][#122683] | ||
- Added a new [session variable]({% link v23.1/set-vars.md %}) `optimizer_use_improved_zigzag_join_costing`. When enabled, the cost of [zigzag joins]({% link v23.1/cost-based-optimizer.md %}#zigzag-joins) is updated so zigzag joins will only be chosen over scans if the zigzag joins produce fewer rows. This change only applies if the session variable `enable_zigzag_join` is also `on`. [#123068][#123068] | ||
- Improved the selectivity estimation of multi-column filters by the [optimizer]({% link v23.1/cost-based-optimizer.md %}) when the multi-column distinct count is high. This avoids cases where CockroachDB significantly over-estimates the selectivity of a multi-column predicate and as a result can prevent the optimizer from choosing a bad query plan. [#123068][#123068] | ||
|
||
<h3 id="v23-1-21-contributors">Contributors</h3> | ||
|
||
This release includes 59 merged PRs by 26 authors. | ||
|
||
</div> | ||
|
||
[#120797]: https://github.com/cockroachdb/cockroach/pull/120797 | ||
[#121056]: https://github.com/cockroachdb/cockroach/pull/121056 | ||
[#121307]: https://github.com/cockroachdb/cockroach/pull/121307 | ||
[#121382]: https://github.com/cockroachdb/cockroach/pull/121382 | ||
[#121949]: https://github.com/cockroachdb/cockroach/pull/121949 | ||
[#121955]: https://github.com/cockroachdb/cockroach/pull/121955 | ||
[#122055]: https://github.com/cockroachdb/cockroach/pull/122055 | ||
[#122057]: https://github.com/cockroachdb/cockroach/pull/122057 | ||
[#122235]: https://github.com/cockroachdb/cockroach/pull/122235 | ||
[#122301]: https://github.com/cockroachdb/cockroach/pull/122301 | ||
[#122635]: https://github.com/cockroachdb/cockroach/pull/122635 | ||
[#122683]: https://github.com/cockroachdb/cockroach/pull/122683 | ||
[#122746]: https://github.com/cockroachdb/cockroach/pull/122746 | ||
[#122990]: https://github.com/cockroachdb/cockroach/pull/122990 | ||
[#123068]: https://github.com/cockroachdb/cockroach/pull/123068 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,65 @@ | ||
## v23.2.5 | ||
|
||
Release Date: May 7, 2024 | ||
|
||
{% include releases/new-release-downloads-docker-image.md release=include.release %} | ||
|
||
<h3 id="v23-2-5-sql-language-changes">SQL language changes</h3> | ||
|
||
- The new [cluster setting](../v23.2/cluster-settings.html) [`sql.stats.virtual_computed_columns.enabled`](../v23.2/cluster-settings.html#setting-sql-stats-virtual-computed-columns-enabled) enables collection of [table statistics](../v23.2/cost-based-optimizer.html#table-statistics) on virtual [computed columns](../v23.2/computed-columns.html). [#120923][#120923] | ||
- The new [session variable](../v23.2/session-variables.html) `optimizer_use_virtual_computed_column_stats` configures the [optimizer](../v23.2/cost-based-optimizer.html) to consider table statistics on virtual computed columns. [#121179][#121179] | ||
- The new `FORCE_INVERTED_INDEX` [hint](../v23.2/indexes.html#selection) configures the [optimizer](../v23.2/cost-based-optimizer.html) to prefer a query plan scan over any inverted index of the hinted table. If no such query plan can be generated, an error is logged. [#122300][#122300] | ||
- The [optimizer](../v23.2/cost-based-optimizer.html) can now plan constrained scans over [partial indexes](../v23.2/partial-indexes.html) in more cases, particularly on partial indexes with predicates referencing virtual [computed columns](../v23.2/cluster-settings.html#setting-sql-stats-virtual-computed-columns-enabled). [#123408][#123408] | ||
|
||
<h3 id="v23-2-5-operational-changes">Operational changes</h3> | ||
|
||
- A minimum [Raft](../v23.2/architecture/replication-layer.html#raft) scheduler concurrency is now enforced per [store](../v23.2/cockroach-start.html#storage) so that a node with many stores does not spread workers too thinly. This avoids high scheduler latency across [replicas](../v23.2/architecture/glossary.html#replica) on a store when load is imbalanced. [#120798][#120798] | ||
- A [changefeed](../v23.2/change-data-capture-overview.html) optimization to reduce duplicates during aggregator restarts has been disabled due to poor performance. [#123596][#123596] | ||
|
||
<h3 id="v23-2-5-db-console-changes">DB Console changes</h3> | ||
|
||
- The **Commit Latency** chart in the [Changefeed Dashboard](../v23.2/ui-cdc-dashboard.html) now aggregates by max instead of by sum for multi-node changefeeds. This more accurately reflects the amount of time for events to be acknowledged by the downstream sink. [#121235][#121235] | ||
|
||
<h3 id="v23-2-5-bug-fixes">Bug fixes</h3> | ||
|
||
- Fixed a slow memory leak when opening many new [connections](../v23.2/connect-to-the-database.html). This bug was introduced in v22.2.9 and v23.1.0. [#121055][#121055] | ||
- Fixed a bug that occurred when using [`ALTER TABLE`](../v23.2/alter-table.html) to drop and re-add a [`CHECK` constraint](../v23.2/check.html) with the same name. [#121055][#121055] | ||
- [Sequence](../v23.2/create-sequence.html) options `MINVALUE` and `MAXVALUE` automatically adjust to new types bounds. This mirrors the behavior of PostgreSQL. [#121309][#121309] | ||
- Fixed a bug that could prevent timeseries graphs shown on the DB Console SQL Activity [Statement Details](../v23.2/ui-statements-page.html) page from rendering correctly when specifying a custom time range. [#121383][#121383] | ||
- Fixed a bug present since at least v21.1 that could lead to incorrect evaluation of an `IN` expression with: | ||
- [`INT2` or `INT4`](../v23.2/int.html) type on the left side, and | ||
- Values on the right side that are outside of the range of the left side. | ||
|
||
[#121953][#121953] | ||
- Fixed a leak in reported memory usage (not the actual memory usage) by the internal memory accounting system, the limit for which is configured via the [`--max-sql-memory`](../v23.2/cockroach-start.html#flags) flag when a long-running sessions issues hundreds of thousands or more [transactions](../v23.2/transactions.html). This reporting bug could cause `root: memory budget exceeded` errors for other queries. The bug was introduced in v23.1.17 and v23.2.3. [#121950][#121950] | ||
- Fixed a bug introduced in v23.2.4 that could prevent collection of [table statistics](../v23.2/cost-based-optimizer.html#table-statistics) on tables that have on virtual [computed columns](../v23.2/computed-columns.html) of [user-defined type](../v23.2/create-type.html) when the newly-introduced [cluster setting](../v23.2/cluster-settings.html) [`sql.stats.virtual_computed_columns.enabled`](../v23.2/cluster-settings.html#setting-sql-stats-virtual-computed-columns-enabled) is set to `true` (defaults to `false`). The setting was introduced in v23.2.4 and is disabled by default. [#122319][#122319] | ||
- Fixed a bug where a [`GRANT ... ON ALL TABLES`](../v23.2/grant.html) statement could fail if a sequence existed that did not support the [privilege](../v23.2/security-reference/authorization.html#privileges) being granted. [#122034][#122034] | ||
- Fixed an existing bug where an unused value cannot be dropped from an [`ENUM`](../v23.2/enum.html) if the`ENUM` itself is referenced by a [user-defined function](../v23.2/user-defined-functions.html). A value can now be dropped from an`ENUM` as long as the value itself is not being referenced by any other data element, including a user-defined function. [#121237][#121237] | ||
|
||
<div class="release-note-contributors" markdown="1"> | ||
|
||
<h3 id="v23-2-5-contributors">Contributors</h3> | ||
|
||
This release includes 79 merged PRs by 33 authors. | ||
|
||
</div> | ||
|
||
[#120798]: https://github.com/cockroachdb/cockroach/pull/120798 | ||
[#120923]: https://github.com/cockroachdb/cockroach/pull/120923 | ||
[#121055]: https://github.com/cockroachdb/cockroach/pull/121055 | ||
[#121179]: https://github.com/cockroachdb/cockroach/pull/121179 | ||
[#121235]: https://github.com/cockroachdb/cockroach/pull/121235 | ||
[#121237]: https://github.com/cockroachdb/cockroach/pull/121237 | ||
[#121309]: https://github.com/cockroachdb/cockroach/pull/121309 | ||
[#121383]: https://github.com/cockroachdb/cockroach/pull/121383 | ||
[#121950]: https://github.com/cockroachdb/cockroach/pull/121950 | ||
[#121953]: https://github.com/cockroachdb/cockroach/pull/121953 | ||
[#122034]: https://github.com/cockroachdb/cockroach/pull/122034 | ||
[#122162]: https://github.com/cockroachdb/cockroach/pull/122162 | ||
[#122229]: https://github.com/cockroachdb/cockroach/pull/122229 | ||
[#122300]: https://github.com/cockroachdb/cockroach/pull/122300 | ||
[#122319]: https://github.com/cockroachdb/cockroach/pull/122319 | ||
[#123408]: https://github.com/cockroachdb/cockroach/pull/123408 | ||
[#123596]: https://github.com/cockroachdb/cockroach/pull/123596 | ||
[622cd1c76]: https://github.com/cockroachdb/cockroach/commit/622cd1c76 | ||
[894f152fa]: https://github.com/cockroachdb/cockroach/commit/894f152fa |
Oops, something went wrong.