|
| 1 | +## v25.4.0-beta.1 |
| 2 | + |
| 3 | +Release Date: October 1, 2025 |
| 4 | + |
| 5 | +{% include releases/new-release-downloads-docker-image.md release=include.release %} |
| 6 | + |
| 7 | +<h3 id="v25-4-0-beta-1-sql-language-changes">SQL language changes</h3> |
| 8 | + |
| 9 | +- The logical cluster now uses an external connection and automatically updates its configuration when that connection changes. [#149261][#149261] |
| 10 | +- Included `num_txn_retries` and `num_txn_auto_retries` into the `crdb_internal.{cluster,node}_queries` virtual tables as well as output of SHOW QUERIES. These columns, when not NULL, have the same information as `num_retries` and `num_auto_retries` columns of `crdb_internal.{cluster,node}_transactions` virtual tables for the same transaction in which the active query is executed. [#149503][#149503] |
| 11 | +- Tables with vector indexes will no longer be taken offline while the vector index builds. [#151074][#151074] |
| 12 | +- Introduced the unimplemented `SHOW INSPECT ERRORS` statement. [#151674][#151674] |
| 13 | +- Added a built-in function, `crdb_internal.request_transaction_bundle`, that allows users to request a transaction diagnostics bundle for a specified transaction fingerprint ID. [#153608][#153608] |
| 14 | +- Implemented the `pg_get_function_arg_default` builtin function. This also causes the `information_schema.parameters(parameter_default)` column to be populated correctly. [#153625][#153625] |
| 15 | + |
| 16 | +<h3 id="v25-4-0-beta-1-operational-changes">Operational changes</h3> |
| 17 | + |
| 18 | +- Removed the `bulkio.backup.deprecated_full_backup_with_subdir.enabled` cluster setting, since backups will now fail if this is set to true. [#153628][#153628] |
| 19 | +- Raised the cache size for the storage engine's block cache to 256 MiB. Note that production systems should always configure this setting. [#153739][#153739] |
| 20 | +- Deprecated the bespoke restore and import event logs. For any deployment that is reliant on those logs, use the status change event log which now plumbs the SQL user that owns the job. [#153889][#153889] |
| 21 | +- The `incremental_location` option is now deprecated and will be removed in a future release. This feature was added so customers could define different TTL policies for incremental backups vs full backups. Users can still do this since incremental backups are by default stored in a distinct directory relative to full backups ({collection_root}/incrementals). [#153890][#153890] |
| 22 | + |
| 23 | +<h3 id="v25-4-0-beta-1-db-console-changes">DB Console changes</h3> |
| 24 | + |
| 25 | +- In the DB Console, the **Active Executions** table on the Statements and Transactions pages now includes a new **Isolation Level** column. The Sessions page also includes a new **Default Isolation Level** column. [#153617][#153617] |
| 26 | + |
| 27 | +<h3 id="v25-4-0-beta-1-bug-fixes">Bug fixes</h3> |
| 28 | + |
| 29 | +- Fixed a bug where a CockroachDB node could crash when executing DO statements that contain user-defined types (possibly non-existing) in non-default configuration. [#151849][#151849] |
| 30 | +- Fixed a deadlock in `DROP COLUMN CASCADE` operations when dropping columns referenced by `STORED` computed columns. [#153683][#153683] |
| 31 | +- Fixed a bug where `ALTER POLICY` was incorrectly dropping dependency tracking for functions, sequences, or types in policy expressions. [#153787][#153787] |
| 32 | +- Fixed a bug where we would not show the pgwire `RowDescription` for `EXECUTE` statements that were themselves prepared using the pgwire `Parse` command. [#153905][#153905] |
| 33 | +- Fixed a runtime error that could be hit if a new secondary index had a name collision with a primary index. [#153986][#153986] |
| 34 | + |
| 35 | +<h3 id="v25-4-0-beta-1-miscellaneous">Miscellaneous</h3> |
| 36 | + |
| 37 | +- Fixed a bug where the presence of duplicate temporary tables in a backup caused the restore to fail with a `restoring table desc and namespace entries: table already exists` error. Informs: #153722 [#153724][#153724] |
| 38 | + |
| 39 | + |
| 40 | +[#153739]: https://github.com/cockroachdb/cockroach/pull/153739 |
| 41 | +[#153889]: https://github.com/cockroachdb/cockroach/pull/153889 |
| 42 | +[#151849]: https://github.com/cockroachdb/cockroach/pull/151849 |
| 43 | +[#153683]: https://github.com/cockroachdb/cockroach/pull/153683 |
| 44 | +[#151674]: https://github.com/cockroachdb/cockroach/pull/151674 |
| 45 | +[#149503]: https://github.com/cockroachdb/cockroach/pull/149503 |
| 46 | +[#151074]: https://github.com/cockroachdb/cockroach/pull/151074 |
| 47 | +[#153628]: https://github.com/cockroachdb/cockroach/pull/153628 |
| 48 | +[#149261]: https://github.com/cockroachdb/cockroach/pull/149261 |
| 49 | +[#153890]: https://github.com/cockroachdb/cockroach/pull/153890 |
| 50 | +[#153905]: https://github.com/cockroachdb/cockroach/pull/153905 |
| 51 | +[#153608]: https://github.com/cockroachdb/cockroach/pull/153608 |
| 52 | +[#153617]: https://github.com/cockroachdb/cockroach/pull/153617 |
| 53 | +[#153787]: https://github.com/cockroachdb/cockroach/pull/153787 |
| 54 | +[#153986]: https://github.com/cockroachdb/cockroach/pull/153986 |
| 55 | +[#153724]: https://github.com/cockroachdb/cockroach/pull/153724 |
| 56 | +[#153625]: https://github.com/cockroachdb/cockroach/pull/153625 |
0 commit comments