From 8f0b40b95051d5d752bd3436fb90c8f3d2b4dd15 Mon Sep 17 00:00:00 2001 From: Automated Release Bot Date: Mon, 16 Jun 2025 15:21:28 +0000 Subject: [PATCH 1/4] Update release notes for v25.3-v25.3.0-alpha.2 From d8a35fff1bfa28f3cfd83f1d0474c66a51d5aae4 Mon Sep 17 00:00:00 2001 From: Automated Release Bot Date: Mon, 16 Jun 2025 15:21:29 +0000 Subject: [PATCH 2/4] Update release notes for v25.3-v25.3.0-alpha.2 --- src/current/_data/releases.yml | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/src/current/_data/releases.yml b/src/current/_data/releases.yml index f14378f4e2f..cd33a54d49a 100644 --- a/src/current/_data/releases.yml +++ b/src/current/_data/releases.yml @@ -8743,3 +8743,31 @@ docker_arm_experimental: false docker_arm_limited_access: false source: true + + +- release_name: v25.3.0-alpha.2 + major_version: v25.3 + release_date: '2025-06-16' + release_type: Testing + go_version: go1.23.7 + sha: 5ccd93e6229fab8737eb2991f3116faa58ea1aec + has_sql_only: true + has_sha256sum: true + mac: + mac_arm: true + mac_arm_experimental: true + mac_arm_limited_access: false + windows: true + linux: + linux_arm: true + linux_arm_experimental: false + linux_arm_limited_access: false + linux_intel_fips: true + linux_arm_fips: false + docker: + docker_image: cockroachdb/cockroach-unstable + docker_arm: true + docker_arm_experimental: false + docker_arm_limited_access: false + source: true + previous_release: v25.3.0-alpha.1 From eb4db9bc25cbd2b9bd3dc4a5e4a58cf13f2555ae Mon Sep 17 00:00:00 2001 From: Automated Release Bot Date: Mon, 16 Jun 2025 15:21:30 +0000 Subject: [PATCH 3/4] Update release notes for v25.3-v25.3.0-alpha.2 --- .../releases/v25.3/v25.3.0-alpha.2.md | 110 ++++++++++++++++++ 1 file changed, 110 insertions(+) create mode 100644 src/current/_includes/releases/v25.3/v25.3.0-alpha.2.md diff --git a/src/current/_includes/releases/v25.3/v25.3.0-alpha.2.md b/src/current/_includes/releases/v25.3/v25.3.0-alpha.2.md new file mode 100644 index 00000000000..8ca6bc2ad05 --- /dev/null +++ b/src/current/_includes/releases/v25.3/v25.3.0-alpha.2.md @@ -0,0 +1,110 @@ +## v25.3.0-alpha.2 + +Release Date: June 16, 2025 + +{% include releases/new-release-downloads-docker-image.md release=include.release %} + +

General changes

+ +- Changefeed source metadata now includes the `crdb_internal_table_id` field, enabling downstream consumers to uniquely identify tables even if table names change. + [#147341][#147341] +- Changefeeds emitting to Kafka sinks that were created in CockroachDB v24.2.1+, or v23.2.10+ and v24.1.4+ with the `changefeed.new_kafka_sink.enabled` cluster setting enabled now include the message key, size, and MVCC timestamp in message too large error logs. + [#147543][#147543] + +

SQL language changes

+ +- Added support for query tagging, which allows users to add query tags to their SQL statements via comments. These query tags are included in: +- All log entries generated during the execution of a SQL statement and are prefixed by `querytag-`. +- Traces and are prefixed by `querytag-`. +- In the `crdb_internal.cluster_execution_insights` and `crdb_internal.node_execution_insights` virtual tables in a new `query_tags` JSONB column. +This feature is disabled by default and can be enabled using the `sql.sqlcommenter.enabled` cluster setting. Comments must follow the [SQLCommenter specification](https://google.github.io/sqlcommenter/spec/). + [#145435][#145435] +- Add session variable + `initial_retry_backoff_for_read_committed` which controls the initial + backoff duration when retrying an individual statement in an explicit + READ COMMITTED transaction. A duration of 0 disables exponential + backoff. + + If a statement in an explicit READ COMMITTED transaction is failing with + the following 40001 error: + + ``` + ERROR: restart transaction: read committed retry limit exceeded; set by max_retries_for_read_committed=... + ``` + + Then `initial_retry_backoff_for_read_committed` should be set to a + duration proportional to the typical execution time of the statement (in + addition to also increasing `max_retries_for_read_committed`). [#146860][#146860] +- Added the `SHOW CREATE ALL ROUTINES` statement, which can be used to show `CREATE` statements for all user-defined functions (UDFs) and procedures in the current database. + [#147452][#147452] +- Added the metrics `sql.txn.auto_retry.count` and `sql.statements.auto_retry.count`, which count the number of automatic retries of SQL transactions and statements, respectively, within the database. These metrics differ from the related `txn.restarts.*` metrics, which count retryable errors emitted by the KV layer that must be retried. The new `sql.txn.auto_retry.count` and `sql.statements.auto_retry.count` metrics count auto-retry actions taken by the SQL layer in response to some of those retryable errors. + [#147682][#147682] +- Set the default value of session variable + `initial_retry_backoff_for_read_committed` to 2ms. Testing has shown + that some high-contention workloads running under Read Committed + isolation benefit from exponential backoff. 2ms might be too quick of an + initial backoff for longer-running statements, but setting this much + higher than the normal duration of execution will cause excessive delay. [#147869][#147869] +- This change increases the default value for + the `max_retries_for_read_committed` session variable from 10 to 100. + Testing has shown that some high-contention workloads running under Read + Committed isolation benefit from more statement retries. [#147869][#147869] + +

Operational changes

+ +- Added an `alter_changefeed` structured log event to provide more visibility into when an `ALTER CHANGEFEED` event occurred and what changed. + [#147679][#147679] +- Added new timeseries metrics to the `storage.value_separation.*` namespace for observing the behavior of storage engine value separation. + [#147728][#147728] + +

DB Console changes

+ +- The Hot Ranges page node filter has been moved out of the main filter container and now filters nodes on the backend to reduce load time. + [#147089][#147089] +- The Insights page in the DB Console now displays SQL commenter query tags for statement executions. These tags provide application context (such as application name, user ID, or feature flags) embedded in SQL comments using the `sqlcommenter` format. This information can help correlate slow query performance with specific application states. The Query Tags column is available in the Statement Executions view's Statement Insights table, but it is hidden by default. To display it, use the Columns selector. + [#147439][#147439] +- Retry counts for statements executing under `READ COMMITTED` isolation are now more accurate. + [#147682][#147682] + +

Bug fixes

+ +- Fixed an issue where self-referencing triggers did not have their dependencies properly recorded, which could lead to broken dependencies. + [#147018][#147018] +- Fixed a security issue where optimizer predicate reordering could leak information about hidden rows protected by row-level security (RLS) policies. + [#147348][#147348] +- Fixed a bug on the SQL Activity Statements and Transactions pages where the time picker failed to support sub-hour time ranges when the `sql.stats.aggregation.interval` was set to a value under 1 hour. Previously, selecting a short time window (e.g., 10 minutes) would query for a full hour of data. The fix ensures that the selected time range is respected, enabling more precise analysis of recent activity. + [#147447][#147447] +- `FUNCTION` and `PROCEDURE` are now shown via `\h show create` in the CLI doc. + [#147666][#147666] +- Fixed a bug where functions lost their row-level security (RLS) policy backreferences, leading to schema change failures. + [#147696][#147696] +- Fixed a bug where `ALTER TABLE` was modifying identity attributes on columns not backed by a sequence. + [#147698][#147698] +- Fixed an error in `crdb_internal.table_spans` when a table's schema had been dropped. + [#147766][#147766] +- Fixed a bug where introspection queries (such as a against the `crdb_internal` system catalog) could fail if a dropped constraint referenced a column that was also being dropped. + [#147773][#147773] +- Fixed a bug where adding multiple columns in a single statement with `AddGeometryColumn` would cause runtime errors. + [#147998][#147998] + + +[#147018]: https://github.com/cockroachdb/cockroach/pull/147018 +[#147348]: https://github.com/cockroachdb/cockroach/pull/147348 +[#147447]: https://github.com/cockroachdb/cockroach/pull/147447 +[#147543]: https://github.com/cockroachdb/cockroach/pull/147543 +[#146860]: https://github.com/cockroachdb/cockroach/pull/146860 +[#147682]: https://github.com/cockroachdb/cockroach/pull/147682 +[#147679]: https://github.com/cockroachdb/cockroach/pull/147679 +[#147089]: https://github.com/cockroachdb/cockroach/pull/147089 +[#147666]: https://github.com/cockroachdb/cockroach/pull/147666 +[#147698]: https://github.com/cockroachdb/cockroach/pull/147698 +[#147773]: https://github.com/cockroachdb/cockroach/pull/147773 +[#147998]: https://github.com/cockroachdb/cockroach/pull/147998 +[#145435]: https://github.com/cockroachdb/cockroach/pull/145435 +[#147452]: https://github.com/cockroachdb/cockroach/pull/147452 +[#147869]: https://github.com/cockroachdb/cockroach/pull/147869 +[#147766]: https://github.com/cockroachdb/cockroach/pull/147766 +[#147439]: https://github.com/cockroachdb/cockroach/pull/147439 +[#147341]: https://github.com/cockroachdb/cockroach/pull/147341 +[#147728]: https://github.com/cockroachdb/cockroach/pull/147728 +[#147696]: https://github.com/cockroachdb/cockroach/pull/147696 From 287454d0fad8110a6bfb20a0c5f5392a0c77afd6 Mon Sep 17 00:00:00 2001 From: katmayb Date: Mon, 16 Jun 2025 11:48:49 -0400 Subject: [PATCH 4/4] Edits --- .../releases/v25.3/v25.3.0-alpha.2.md | 66 +++++-------------- 1 file changed, 16 insertions(+), 50 deletions(-) diff --git a/src/current/_includes/releases/v25.3/v25.3.0-alpha.2.md b/src/current/_includes/releases/v25.3/v25.3.0-alpha.2.md index 8ca6bc2ad05..1ea7394e3cd 100644 --- a/src/current/_includes/releases/v25.3/v25.3.0-alpha.2.md +++ b/src/current/_includes/releases/v25.3/v25.3.0-alpha.2.md @@ -14,41 +14,17 @@ Release Date: June 16, 2025

SQL language changes

- Added support for query tagging, which allows users to add query tags to their SQL statements via comments. These query tags are included in: -- All log entries generated during the execution of a SQL statement and are prefixed by `querytag-`. -- Traces and are prefixed by `querytag-`. -- In the `crdb_internal.cluster_execution_insights` and `crdb_internal.node_execution_insights` virtual tables in a new `query_tags` JSONB column. -This feature is disabled by default and can be enabled using the `sql.sqlcommenter.enabled` cluster setting. Comments must follow the [SQLCommenter specification](https://google.github.io/sqlcommenter/spec/). - [#145435][#145435] -- Add session variable - `initial_retry_backoff_for_read_committed` which controls the initial - backoff duration when retrying an individual statement in an explicit - READ COMMITTED transaction. A duration of 0 disables exponential - backoff. - - If a statement in an explicit READ COMMITTED transaction is failing with - the following 40001 error: - - ``` - ERROR: restart transaction: read committed retry limit exceeded; set by max_retries_for_read_committed=... - ``` - - Then `initial_retry_backoff_for_read_committed` should be set to a - duration proportional to the typical execution time of the statement (in - addition to also increasing `max_retries_for_read_committed`). [#146860][#146860] + - All log entries generated during the execution of a SQL statement and are prefixed by `querytag-`. + - Traces and are prefixed by `querytag-`. + - In the `crdb_internal.cluster_execution_insights` and `crdb_internal.node_execution_insights` virtual tables in a new `query_tags` JSONB column. + This feature is disabled by default and can be enabled using the `sql.sqlcommenter.enabled` cluster setting. Comments must follow the [SQLCommenter specification](https://google.github.io/sqlcommenter/spec/). [#145435][#145435] +- Added a session variable `initial_retry_backoff_for_read_committed` that controls the initial backoff duration when retrying an individual statement in an explicit `READ COMMITTED` transaction. A duration of `0` disables exponential backoff. If a statement in an explicit `READ COMMITTED` transaction is failing with the `40001` error `ERROR: restart transaction: read committed retry limit exceeded; set by max_retries_for_read_committed=...`, then you should set `initial_retry_backoff_for_read_committed` to a duration proportional to the typical execution time of the statement (in addition to also increasing `max_retries_for_read_committed`). [#146860][#146860] - Added the `SHOW CREATE ALL ROUTINES` statement, which can be used to show `CREATE` statements for all user-defined functions (UDFs) and procedures in the current database. [#147452][#147452] - Added the metrics `sql.txn.auto_retry.count` and `sql.statements.auto_retry.count`, which count the number of automatic retries of SQL transactions and statements, respectively, within the database. These metrics differ from the related `txn.restarts.*` metrics, which count retryable errors emitted by the KV layer that must be retried. The new `sql.txn.auto_retry.count` and `sql.statements.auto_retry.count` metrics count auto-retry actions taken by the SQL layer in response to some of those retryable errors. [#147682][#147682] -- Set the default value of session variable - `initial_retry_backoff_for_read_committed` to 2ms. Testing has shown - that some high-contention workloads running under Read Committed - isolation benefit from exponential backoff. 2ms might be too quick of an - initial backoff for longer-running statements, but setting this much - higher than the normal duration of execution will cause excessive delay. [#147869][#147869] -- This change increases the default value for - the `max_retries_for_read_committed` session variable from 10 to 100. - Testing has shown that some high-contention workloads running under Read - Committed isolation benefit from more statement retries. [#147869][#147869] +- Increased the default value for the `max_retries_for_read_committed` session variable from `10` to `100`. Testing has shown that some high-contention workloads running under `READ COMMITTED` isolation benefit from more statement retries. [#147869][#147869] +- The session variable `initial_retry_backoff_for_read_committed` now defaults to `2` (milliseconds). Testing has shown that some high-contention workloads running under `READ COMMITTED` isolation benefit from exponential backoff. `2` might be too quick of an initial backoff for longer-running statements, but setting this value much higher than the normal duration of execution will cause excessive delay. [#147869][#147869]

Operational changes

@@ -68,25 +44,15 @@ This feature is disabled by default and can be enabled using the `sql.sqlcomment

Bug fixes

-- Fixed an issue where self-referencing triggers did not have their dependencies properly recorded, which could lead to broken dependencies. - [#147018][#147018] -- Fixed a security issue where optimizer predicate reordering could leak information about hidden rows protected by row-level security (RLS) policies. - [#147348][#147348] -- Fixed a bug on the SQL Activity Statements and Transactions pages where the time picker failed to support sub-hour time ranges when the `sql.stats.aggregation.interval` was set to a value under 1 hour. Previously, selecting a short time window (e.g., 10 minutes) would query for a full hour of data. The fix ensures that the selected time range is respected, enabling more precise analysis of recent activity. - [#147447][#147447] -- `FUNCTION` and `PROCEDURE` are now shown via `\h show create` in the CLI doc. - [#147666][#147666] -- Fixed a bug where functions lost their row-level security (RLS) policy backreferences, leading to schema change failures. - [#147696][#147696] -- Fixed a bug where `ALTER TABLE` was modifying identity attributes on columns not backed by a sequence. - [#147698][#147698] -- Fixed an error in `crdb_internal.table_spans` when a table's schema had been dropped. - [#147766][#147766] -- Fixed a bug where introspection queries (such as a against the `crdb_internal` system catalog) could fail if a dropped constraint referenced a column that was also being dropped. - [#147773][#147773] -- Fixed a bug where adding multiple columns in a single statement with `AddGeometryColumn` would cause runtime errors. - [#147998][#147998] - +- Fixed an issue where self-referencing triggers did not have their dependencies properly recorded, which could lead to broken dependencies. [#147018][#147018] +- Fixed a security issue where optimizer predicate reordering could leak information about hidden rows protected by row-level security (RLS) policies. [#147348][#147348] +- Fixed a bug on the SQL Activity Statements and Transactions pages where the time picker failed to support sub-hour time ranges when `sql.stats.aggregation.interval` was set to a value under 1 hour. Previously, selecting a short time window (e.g., 10 minutes) would query for a full hour of data. This fix ensures that the selected time range is respected, enabling more precise analysis of recent activity. [#147447][#147447] +- `FUNCTION` and `PROCEDURE` are now shown via `\h SHOW CREATE` in the CLI doc. [#147666][#147666] +- Fixed a bug where functions lost their row-level security (RLS) policy backreferences, leading to schema change failures. [#147696][#147696] +- Fixed a bug where `ALTER TABLE` was modifying identity attributes on columns not backed by a sequence. [#147698][#147698] +- Fixed an error in `crdb_internal.table_spans` when a table's schema had been dropped. [#147766][#147766] +- Fixed a bug where introspection queries (e.g., querying the `crdb_internal` system catalog) could fail if a dropped constraint referenced a column that was also being dropped. [#147773][#147773] +- Fixed a bug where adding multiple columns in a single statement with `AddGeometryColumn` would cause runtime errors. [#147998][#147998] [#147018]: https://github.com/cockroachdb/cockroach/pull/147018 [#147348]: https://github.com/cockroachdb/cockroach/pull/147348