|
| 1 | +## v25.1.6 |
| 2 | + |
| 3 | +Release Date: April 30th, 2025 |
| 4 | + |
| 5 | +{% include releases/new-release-downloads-docker-image.md release=include.release %} |
| 6 | + |
| 7 | +<h3 id="v25-1-6-sql-language-changes">SQL language changes</h3> |
| 8 | + |
| 9 | +- Added the `WITH IGNORE_FOREIGN_KEYS` option to `SHOW CREATE TABLE` which omits foreign key constraints from the output schema. This option is also allowed in `SHOW CREATE VIEW`, but has no effect. It cannot be combined with the `WITH REDACT` option. |
| 10 | + [#142161][#142161] |
| 11 | +- `EXPLAIN ANALYZE` statements now display the number of transaction retries and time spent retrying, if non-zero, in the plan output. |
| 12 | + [#142928][#142928] |
| 13 | +- A new `execution time` statistic is now reported on `EXPLAIN ANALYZE` output for most operators. Previously, this statistic was only available on the DistSQL diagrams in `EXPLAIN ANALYZE (DISTSQL)` output. |
| 14 | + [#143895][#143895] |
| 15 | + |
| 16 | +<h3 id="v25-1-6-operational-changes">Operational changes</h3> |
| 17 | + |
| 18 | +- The `sys.cpu.host.combined.percent-normalized` metric has been updated to include additional counters for more accurate host CPU measurement and to reduce underreporting. It now accounts for time spent processing hardware (`irq`) and software (`softirq`) interrupts, as well as `nice` time, which represents low-priority user-mode activity. |
| 19 | + [#142906][#142906] |
| 20 | +- The `server.client_cert_expiration_cache.capacity` cluster setting has been removed. The `security.certificate.expiration.client` and `security.certificate.ttl.client` metrics now report the lowest value observed for a user in the last 24 hours. |
| 21 | + [#143729][#143729] |
| 22 | + |
| 23 | +<h3 id="v25-1-6-bug-fixes">Bug fixes</h3> |
| 24 | + |
| 25 | +- Previously, fast failback for physical cluster replication (PCR) could succeed even if the destination cluster protected timestamp had been removed, causing the reverse stream to enter a crashing loop. This fix ensures the failback command fast fails. |
| 26 | + [#142922][#142922] |
| 27 | +- The reader virtual cluster now starts if the user begins a physical cluster replication (PCR) stream from a cursor via `ALTER VIRTUAL CLUSTER virtual_cluster START REPLICATION OF virtual_cluster ON physical_cluster WITH READ VIRTUAL CLUSTER`. |
| 28 | + [#143141][#143141] |
| 29 | +- Fixed a bug that caused changefeeds to fail on startup when scanning a single key. |
| 30 | + [#143150][#143150] |
| 31 | +- MVCC garbage collection is now fully subject to IO admission control. Previously, it was possible for MVCC GC to cause store overload (such as LSM inversion) when a large amount of data would become eligible for garbage collection. Should any issues arise from subjecting MVCC GC to admission control, the `kv.mvcc_gc.queue_kv_admission_control.enabled` cluster setting can be set to `false` to restore the previous behavior. |
| 32 | + [#143277][#143277] |
| 33 | +- Fixed a bug where calling a stored procedure could drop the procedure if it had `OUT` parameters that were not used by the calling routine. This bug had existed since PL/pgSQL `CALL` statements were introduced in v24.1. |
| 34 | + [#143290][#143290] |
| 35 | +- Fixed a bug where CockroachDB would encounter an internal error when decoding the gists of plans with `CALL` statements. The bug had been present since v23.2. |
| 36 | + [#143315][#143315] |
| 37 | +- Fixed a crash due to `use of enum metadata before hydration` when using logical data replication (LDR) with user-defined types. |
| 38 | + [#143373][#143373] |
| 39 | +- Fixed a bug where a GC threshold error (which appears as "batch timestamp must be after replica GC threshold ...") could cause a schema change that backfills data to fail. Now, the error will cause the backfill to be retried at a higher timestamp to avoid the error. |
| 40 | + [#143520][#143520] |
| 41 | +- Fixed a bug in `v24.1.14`, `v24.3.7`, `v24.3.8`, and `v25.1` that could cause a nil-pointer error when a column's default expression contained a volatile expression (like `nextval`) as a UDF argument. |
| 42 | + [#143634][#143634] |
| 43 | +- Fixed a potential deadlock that could occur during client certificate updates while metrics were being collected. This issue affected the reliability of certificate expiration reporting. |
| 44 | + [#143729][#143729] |
| 45 | +- Previously, the fields `maximum memory usage` and `max sql temp disk usage` in the `EXPLAIN ANALYZE` output could be under-reported for distributed plans when memory-intensive operations were fully performed on the remote nodes. This is now fixed. The bug existed in v22.1 and later. |
| 46 | + [#143794][#143794] |
| 47 | +- The `ALTER VIRTUAL CLUSTER SET REPLICATION READ VIRTUAL CLUSTER` syntax is now supported for adding a reader virtual cluster for an existing Physical Cluster Replication (PCR) standby. |
| 48 | + [#143853][#143853] |
| 49 | +- Fixed a bug where CockroachDB could encounter a `cannot specify timestamp older than ...` error during table statistics collection in some cases (e.g., when the cluster is overloaded). The bug was present since v19.1. |
| 50 | + [#144018][#144018] |
| 51 | +- Fixed a bug that could cause a stack overflow during execution of a prepared statement that invoked a PL/pgSQL routine with a loop. The bug existed in versions v23.2.22, v24.1.15, v24.3.9, v25.1.2, v25.1.3, and pre-release versions of v25.2 prior to v25.2.0-alpha.3. |
| 52 | + [#144031][#144031] |
| 53 | +- Fixed a bug that could lead to a node stall. |
| 54 | + [#146410][#146410] |
| 55 | + |
| 56 | +<h3 id="v25-1-6-performance-improvements">Performance improvements</h3> |
| 57 | + |
| 58 | +- Schema changes that require data to be backfilled no longer hold a protected timestamp for the entire duration of the backfill; this means there is less overhead caused by MVCC garbage collection after the backfill completes. |
| 59 | + [#143520][#143520] |
| 60 | + |
| 61 | +<h3 id="v25-1-6-miscellaneous">Miscellaneous</h3> |
| 62 | + |
| 63 | +- Fix rare corruption bug that impacts import and |
| 64 | + materialized views. [#144687][#144687] |
| 65 | + |
| 66 | + |
| 67 | +[#142928]: https://github.com/cockroachdb/cockroach/pull/142928 |
| 68 | +[#143729]: https://github.com/cockroachdb/cockroach/pull/143729 |
| 69 | +[#143277]: https://github.com/cockroachdb/cockroach/pull/143277 |
| 70 | +[#143853]: https://github.com/cockroachdb/cockroach/pull/143853 |
| 71 | +[#144018]: https://github.com/cockroachdb/cockroach/pull/144018 |
| 72 | +[#144031]: https://github.com/cockroachdb/cockroach/pull/144031 |
| 73 | +[#143895]: https://github.com/cockroachdb/cockroach/pull/143895 |
| 74 | +[#144687]: https://github.com/cockroachdb/cockroach/pull/144687 |
| 75 | +[#143141]: https://github.com/cockroachdb/cockroach/pull/143141 |
| 76 | +[#143150]: https://github.com/cockroachdb/cockroach/pull/143150 |
| 77 | +[#143290]: https://github.com/cockroachdb/cockroach/pull/143290 |
| 78 | +[#143373]: https://github.com/cockroachdb/cockroach/pull/143373 |
| 79 | +[#142161]: https://github.com/cockroachdb/cockroach/pull/142161 |
| 80 | +[#142906]: https://github.com/cockroachdb/cockroach/pull/142906 |
| 81 | +[#142922]: https://github.com/cockroachdb/cockroach/pull/142922 |
| 82 | +[#143315]: https://github.com/cockroachdb/cockroach/pull/143315 |
| 83 | +[#143520]: https://github.com/cockroachdb/cockroach/pull/143520 |
| 84 | +[#143634]: https://github.com/cockroachdb/cockroach/pull/143634 |
| 85 | +[#143794]: https://github.com/cockroachdb/cockroach/pull/143794 |
| 86 | +[#146410]: https://github.com/cockroachdb/cockroach/pull/146410 |
0 commit comments