Skip to content

Commit

Permalink
Add cloud-first release notes for v24.1.10 (#19279)
Browse files Browse the repository at this point in the history
Fixes REL-1846
  • Loading branch information
rmloveland authored Jan 9, 2025
1 parent d3d973d commit a99122b
Show file tree
Hide file tree
Showing 2 changed files with 129 additions and 0 deletions.
34 changes: 34 additions & 0 deletions src/current/_data/releases.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7760,3 +7760,37 @@
docker_arm_limited_access: false
source: true
previous_release: v25.1.0-alpha.1

- release_name: v24.1.10
major_version: v24.1
release_date: '2025-01-09'
release_type: Production
go_version: go1.22.8
sha: b602f18f632ec086635ebe719cf5ede5e2bf2775
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
docker_arm: true
docker_arm_experimental: false
docker_arm_limited_access: false
source: true
previous_release: v24.1.9
cloud_only: true
cloud_only_message_short: 'Available only for select CockroachDB Cloud clusters'
cloud_only_message: >
This version is currently available only for select
CockroachDB Cloud clusters. To request to upgrade
a CockroachDB self-hosted cluster to this version,
[contact support](https://support.cockroachlabs.com/hc/requests/new).
95 changes: 95 additions & 0 deletions src/current/_includes/releases/v24.1/v24.1.10.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
## v24.1.10

Release Date: January 9, 2025

{% include releases/new-release-downloads-docker-image.md release=include.release %}

<h3 id="v24-1-10-security-updates">Security updates</h3>

- The cluster setting `server.jwt_authentication.issuers` now takes the issuer's configuration value apart from the URI. [#138187][#138187]
- This can be set to one of the following values:
1. A string that Go can parse as a valid issuer URL, e.g., `'https://accounts.google.com'`.
1. A string that can be parsed as valid JSON array of issuer URLs, e.g., `['example.com/adfs','https://accounts.google.com']`.
1. A string that can be parsed as valid JSON and deserialized into a map of issuer URLs to corresponding JWKS URIs. In the third case, CockroachDB will override the JWKS URI present in the issuer's well-known endpoint, e.g., `'{ "issuer_jwks_map": { "https://accounts.google.com": "https://www.googleapis.com/oauth2/v3/certs", "example.com/adfs": "https://example.com/adfs/discovery/keys" }}'`. When `issuer_jwks_map` is set, CockroachDB directly uses the JWKS URI to get the key set. In all other cases where `JWKSAutoFetchEnabled` is set, it obtains the JWKS URI first from the issuer's well-known endpoint and then uses this endpoint.

<h3 id="v24-1-10-general-changes">General changes</h3>

- To improve the granularity of changefeed pipeline metrics, the changefeed metrics `changefeed.admit_latency` and `changefeed.commit_latency` have histogram buckets from `5ms` to `60m` (previously `500ms` to `5m`). The following changefeed metrics have histogram buckets from `5ms` to `10m` (previously `500ms` to `5m`):
- `changefeed.parallel_io_queue_nanos`
- `changefeed.parallel_io_result_queue_nanos`
- `changefeed.sink_batch_hist_nanos`
- `changefeed.flush_hist_nanos`
- `changefeed.kafka_throttling_hist_nanos` [#136602][#136602]
- Added support for multiple seed brokers in the new Kafka sink. [#136746][#136746]
- Added a new metric (`distsender.rangefeed.catchup_ranges_waiting_client_side`) that counts how many rangefeeds are waiting on the client-side limiter to start performing catchup scans. [#136836][#136836]
- Added changefeed support for the `mvcc_timestamp` option with the `avro` format. If both options are specified, the Avro schema includes an `mvcc_timestamp` metadata field and emits the row's MVCC timestamp with the row data. [#136017][#136017] [#137594][#137594]
- Added a no-op `AWS_USE_PATH_STYLE` parameter for forward compatibility with v24.3. [#137100][#137100]

<h3 id="v24-1-10-sql-language-changes">SQL language changes</h3>

- Added the `legacy_varchar_typing` session setting, which reverts the changes of [#133037](https://github.com/cockroachdb/cockroach/pull/133037) that caused the change in typing behavior described in [#137837](https://github.com/cockroachdb/cockroach/pull/137837). Specifically, it makes type-checking and overload resolution ignore the newly added "unpreferred" overloads. This setting defaults to `on`. [#137921][#137921]

<h3 id="v24-1-10-operational-changes">Operational changes</h3>

- Removed the `sql.auth.resolve_membership_single_scan.enabled` cluster setting. This was added out of precaution in case it was necessary to revert back to the old behavior for looking up role memberships, but this escape hatch has never been needed in practice since this was added in v23.1. [#136121][#136121]
- Telemetry delivery is now considered successful even in cases where CockroachDB experiences a network timeout. This will prevent throttling in cases outside an operator's control. [#136478][#136478]
- When a schema change job is completed, rolls back, or encounters a failure, the time taken since the job began is now logged in a structured log in the `SQL_SCHEMA` log channel. [#136951][#136951]

<h3 id="v24-1-10-bug-fixes">Bug fixes</h3>

- Fixed a bug where `ALTER COLUMN SET NOT NULL` was not enforced consistently when the table was created in the same transaction. [#136364][#136364]
- Fixed a bug where `CREATE RELATION / TYPE` could leave dangling namespace entries if the schema was concurrently being dropped. [#136408][#136408]
- The `idle_in_session_timeout` setting now excludes the time spent waiting for schema changer jobs to complete, preventing unintended session termination during schema change operations. [#136503][#136503]
- Fixed a bug that caused the optimizer to use stale table statistics after altering an `ENUM` type used in the table. [#136831][#136831]
- Table statistics collection in CockroachDB could previously run into `no bytes in account to release` errors in some edge cases (when the SQL memory budget, configured via `--max-sql-memory` flag, was close to being exhausted). The bug had been present since v21.2 and is now fixed. [#136164][#136164]
- CockroachDB now better respects the `statement_timeout` limit on queries involving the top K sort and merge join operations. [#136651][#136651]
- Fixed an issue where license enforcement was not consistently disabled for single-node clusters started with `cockroach start-single-node`. The fix ensures proper behavior on cluster restarts. [#137010][#137010]
- Fixed a bug that caused queries against tables with user-defined types to sometimes fail with errors after restoring those tables. [#137355][#137355]
- Fixed a bug that caused an incorrect filesystem to be logged as part of the store information. [#137112][#137112]
- Fixed a bug that had existed since v24.1 that would cause a set-returning UDF with `OUT` parameters to return a single row. [#137378][#137378]
- Fixed a bug that could cause an internal error if a table with an implicit (`rowid`) primary key was locked from within a subquery, e.g.: `SELECT * FROM (SELECT * FROM foo WHERE x = 2) FOR UPDATE;`. The error could occur either under `READ COMMITTED` isolation, or with `optimizer_use_lock_op_for_serializable` enabled. [#131397][#131397]
- Fixed an issue where adding an existing column with the `IF NOT EXISTS` option could exit too early, skipping necessary handling of the abstract syntax tree (AST). This could lead to failure of the `ALTER` statement. [#137677][#137677]
- Fixed an issue where a schema change could incorrectly cause a changefeed to fail with an assertion error like `received boundary timestamp ... of type ... before reaching existing boundary of type ...`. [#137704][#137704]
- Internal scans are now exempt from the `sql.defaults.disallow_full_table_scans.enabled` setting, allowing index creation even when the cluster setting is active. [#137722][#137722]
- Using more than one `DECLARE` statement in the definition of a user-defined function (UDF) now correctly declares additional variables. [#135739][#135739]
- Fixed an issue where corrupted table statistics could cause the `cockroach` process to crash. [#136040][#136040]
- Fixed a bug that could cause the password for the `root` user to be deleted while upgrading to v24.1. This bug only affected clusters that were initially created with v22.2 or earlier. The same bug could also cause the `defaultdb` and `postgres` databases to be recreated during the upgrade to v24.1 if they had been previously deleted. [#136074][#136074]
- `CLOSE CURSOR` statements are now allowed in read-only transactions, similar to PostgreSQL. The bug had been present since at least v23.1. [#137790][#137790]

<h3 id="v24-1-10-performance-improvements">Performance improvements</h3>

- Improved the internal caching logic for role membership information. This reduces the latency impact of commands such as `DROP ROLE`, `CREATE ROLE`, and `GRANT role TO user`, which cause the role membership cache to be invalidated. [#136121][#136121]

[#131397]: https://github.com/cockroachdb/cockroach/pull/131397
[#135739]: https://github.com/cockroachdb/cockroach/pull/135739
[#136017]: https://github.com/cockroachdb/cockroach/pull/136017
[#136040]: https://github.com/cockroachdb/cockroach/pull/136040
[#136074]: https://github.com/cockroachdb/cockroach/pull/136074
[#136121]: https://github.com/cockroachdb/cockroach/pull/136121
[#136164]: https://github.com/cockroachdb/cockroach/pull/136164
[#136364]: https://github.com/cockroachdb/cockroach/pull/136364
[#136408]: https://github.com/cockroachdb/cockroach/pull/136408
[#136478]: https://github.com/cockroachdb/cockroach/pull/136478
[#136503]: https://github.com/cockroachdb/cockroach/pull/136503
[#136602]: https://github.com/cockroachdb/cockroach/pull/136602
[#136651]: https://github.com/cockroachdb/cockroach/pull/136651
[#136682]: https://github.com/cockroachdb/cockroach/pull/136682
[#136708]: https://github.com/cockroachdb/cockroach/pull/136708
[#136746]: https://github.com/cockroachdb/cockroach/pull/136746
[#136831]: https://github.com/cockroachdb/cockroach/pull/136831
[#136836]: https://github.com/cockroachdb/cockroach/pull/136836
[#136951]: https://github.com/cockroachdb/cockroach/pull/136951
[#137010]: https://github.com/cockroachdb/cockroach/pull/137010
[#137100]: https://github.com/cockroachdb/cockroach/pull/137100
[#137112]: https://github.com/cockroachdb/cockroach/pull/137112
[#137114]: https://github.com/cockroachdb/cockroach/pull/137114
[#137355]: https://github.com/cockroachdb/cockroach/pull/137355
[#137378]: https://github.com/cockroachdb/cockroach/pull/137378
[#137459]: https://github.com/cockroachdb/cockroach/pull/137459
[#137594]: https://github.com/cockroachdb/cockroach/pull/137594
[#137677]: https://github.com/cockroachdb/cockroach/pull/137677
[#137704]: https://github.com/cockroachdb/cockroach/pull/137704
[#137722]: https://github.com/cockroachdb/cockroach/pull/137722
[#137790]: https://github.com/cockroachdb/cockroach/pull/137790
[#137921]: https://github.com/cockroachdb/cockroach/pull/137921
[#138187]: https://github.com/cockroachdb/cockroach/pull/138187

0 comments on commit a99122b

Please sign in to comment.