|
| 1 | +## v25.4.0-alpha.2 |
| 2 | + |
| 3 | +Release Date: September 23, 2025 |
| 4 | + |
| 5 | +{% include releases/new-release-downloads-docker-image.md release=include.release %} |
| 6 | + |
| 7 | +<h3 id="v25-4-0-alpha-2-sql-language-changes">SQL language changes</h3> |
| 8 | + |
| 9 | +- `CREATE USER` and `GRANT` role operations now wait for full-cluster visibility of the new user table version rather than blocking on convergence. [#150747][#150747] |
| 10 | +- Introduced the `inspect_errors` system table. [#151821][#151821] |
| 11 | +- You now manually create single-column partial statistics on boolean predicate expressions that can become simple index scans. These statistics can be created by adding a constraining `WHERE` expression to `CREATE STATISTICS`. |
| 12 | + |
| 13 | + For example: |
| 14 | + |
| 15 | + ~~~ sql |
| 16 | + CREATE TABLE t (a INT PRIMARY KEY); |
| 17 | + INSERT INTO t VALUES (1), (2), (3), (4), (5); |
| 18 | + CREATE STATISTICS constrained_stat ON a FROM t WHERE a > 2; |
| 19 | + ~~~ |
| 20 | + [#152469][#152469] |
| 21 | + |
| 22 | +- Added the `bulkio.import.row_count_validation.unsafe.enabled` cluster setting (default: `false`), which triggers an asynchronous `INSPECT` job at the end of an `IMPORT` to validate row counts. [#153294][#153294] |
| 23 | + |
| 24 | +<h3 id="v25-4-0-alpha-2-operational-changes">Operational changes</h3> |
| 25 | + |
| 26 | +- Added the cluster setting `kvadmission.use_range_tenant_id_for_non_admin.enabled`, which can be used to disable the behavior where Admission Control uses the range's tenant ID for non-admin requests. This behavior is enabled by default. [#152181][#152181] |
| 27 | +- CockroachDB now logs access to internal system tables and schemas considered unsafe (e.g., `crdb_internal` and `system`). A message is emitted to the `SENSITIVE_ACCESS` log channel when a user overrides the `allow_unsafe_internals` setting or is denied access to these areas. [#152532][#152532] |
| 28 | +- A new `changefeed` file group that collects |
| 29 | + changefeed logs has been added to the default logging configuration. [#153381][#153381] |
| 30 | + |
| 31 | +<h3 id="v25-4-0-alpha-2-bug-fixes">Bug fixes</h3> |
| 32 | + |
| 33 | +- Fixed a bug where the `schema_locked` storage parameter was not being enforced on the `TRUNCATE` command, which could cause changefeed jobs to fail. [#152932][#152932] |
| 34 | +- Fixed a bug introduced in v21.2 where `IMPORT` operations with multiple CSV files could incorrectly reset the bulk summary after processing the first file, causing the actual progress to be overwritten with a `nil` value. [#153111][#153111] |
| 35 | +- Fixed a bug introduced in v25.1.0 that would |
| 36 | + cause a node panic if a `SIGINT` signal was sent during the execution of |
| 37 | + a `CHECK EXTERNAL CONNECTION` command. [#153380][#153380] |
| 38 | +- Fixed a bug where index creation could fail due to validation errors if the schema change was retried or paused/resumed during the backfill. [#153583][#153583] |
| 39 | + |
| 40 | +<h3 id="v25-4-0-alpha-2-performance-improvements">Performance improvements</h3> |
| 41 | + |
| 42 | +- Changefeeds will now |
| 43 | + periodically persist their entire span frontiers so that |
| 44 | + fewer duplicates will need to be emitted during restarts. |
| 45 | + The default persistence interval is 30s, but this can be |
| 46 | + configured with the `changefeed.progress.frontier_persistence.interval` |
| 47 | + cluster setting. [#153491][#153491] |
| 48 | + |
| 49 | +<h3 id="v25-4-0-alpha-2-miscellaneous">Miscellaneous</h3> |
| 50 | + |
| 51 | +- CockroachDB now prevents negative values from appearing in network and disk counters collected from the operating system. These values could previously drop below zero due to hardware changes. Affected counters now reset their baseline values automatically. [#153048][#153048] |
| 52 | + |
| 53 | + |
| 54 | +[#153111]: https://github.com/cockroachdb/cockroach/pull/153111 |
| 55 | +[#153583]: https://github.com/cockroachdb/cockroach/pull/153583 |
| 56 | +[#150747]: https://github.com/cockroachdb/cockroach/pull/150747 |
| 57 | +[#151821]: https://github.com/cockroachdb/cockroach/pull/151821 |
| 58 | +[#153294]: https://github.com/cockroachdb/cockroach/pull/153294 |
| 59 | +[#152532]: https://github.com/cockroachdb/cockroach/pull/152532 |
| 60 | +[#153380]: https://github.com/cockroachdb/cockroach/pull/153380 |
| 61 | +[#153491]: https://github.com/cockroachdb/cockroach/pull/153491 |
| 62 | +[#153048]: https://github.com/cockroachdb/cockroach/pull/153048 |
| 63 | +[#152469]: https://github.com/cockroachdb/cockroach/pull/152469 |
| 64 | +[#152181]: https://github.com/cockroachdb/cockroach/pull/152181 |
| 65 | +[#153381]: https://github.com/cockroachdb/cockroach/pull/153381 |
| 66 | +[#152932]: https://github.com/cockroachdb/cockroach/pull/152932 |
0 commit comments