diff --git a/src/current/_data/releases.yml b/src/current/_data/releases.yml index 7e767df2001..ed01815c16f 100644 --- a/src/current/_data/releases.yml +++ b/src/current/_data/releases.yml @@ -8289,3 +8289,31 @@ docker_arm_limited_access: false source: true previous_release: v24.1.12 + + +- release_name: v24.3.7 + major_version: v24.3 + release_date: '2025-03-01' + release_type: Production + go_version: go1.23.6 + sha: af6ba6030e2fc5d5f92352d6ea4611e4f2936489 + 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.3.6 diff --git a/src/current/_data/versions.csv b/src/current/_data/versions.csv index 19c2cfb5935..6f68e7f25aa 100644 --- a/src/current/_data/versions.csv +++ b/src/current/_data/versions.csv @@ -1,19 +1,19 @@ -major_version,release_date,maint_supp_exp_date,asst_supp_exp_date,last_ga_patch,initial_lts_patch,initial_lts_release_date,lts_maint_supp_exp_date,lts_asst_supp_exp_date,previous_version,crdb_branch_name -v1.0,2017-05-10,2018-05-10,2018-11-10,N/A,N/A,N/A,N/A,N/A,N/A,release-1.0 -v1.1,2017-10-12,2018-10-12,2019-04-12,N/A,N/A,N/A,N/A,N/A,v1.0,release-1.1 -v2.0,2018-04-04,2019-04-04,2019-10-04,N/A,N/A,N/A,N/A,N/A,v1.1,release-2.0 -v2.1,2018-10-30,2019-10-30,2020-04-30,N/A,N/A,N/A,N/A,N/A,v2.0,release-2.1 -v19.1,2019-04-30,2020-04-30,2020-10-30,N/A,N/A,N/A,N/A,N/A,v2.1,release-19.1 -v19.2,2019-11-12,2020-11-12,2021-05-12,N/A,N/A,N/A,N/A,N/A,v19.1,release-19.2 -v20.1,2020-05-12,2021-05-12,2021-11-12,N/A,N/A,N/A,N/A,N/A,v19.2,release-20.1 -v20.2,2020-11-10,2021-11-10,2022-05-10,N/A,N/A,N/A,N/A,N/A,v20.1,release-20.2 -v21.1,2021-05-18,2022-05-18,2022-11-18,N/A,N/A,N/A,N/A,N/A,v20.2,release-21.1 -v21.2,2021-11-16,2022-11-16,2023-05-16,N/A,N/A,N/A,N/A,N/A,v21.1,release-21.2 -v22.1,2022-05-24,2023-05-24,2023-11-24,N/A,N/A,N/A,N/A,N/A,v21.2,release-22.1 -v22.2,2022-12-05,2023-12-05,2024-06-05,N/A,N/A,N/A,N/A,N/A,v22.1,release-22.2 -v23.1,2023-05-15,2024-05-15,2024-11-15,23.1.11,23.1.12,2023-11-13,2024-11-13,2025-11-13,v22.2,release-23.1 -v23.2,2024-02-05,2025-02-05,2025-08-05,23.2.6,23.2.7,2024-07-08,2025-07-08,2026-07-08,v23.1,release-23.2 -v24.1,2024-05-20,2025-05-20,2025-11-20,24.1.5,24.1.6,2024-10-21,2025-10-21,2026-10-21,v23.2,release-24.1 -v24.2,2024-08-12,2025-02-12,N/A,N/A,N/A,N/A,N/A,N/A,v24.1,release-24.2 -v24.3,2024-11-18,2025-11-18,2026-05-18,N/A,N/A,N/A,N/A,N/A,v24.2,release-24.3 -v25.1,2025-02-18,2026-08-18,N/A,N/A,N/A,N/A,N/A,N/A,v24.3,release-25.1 +major_version,release_date,maint_supp_exp_date,asst_supp_exp_date,last_ga_patch,initial_lts_patch,initial_lts_release_date,lts_maint_supp_exp_date,lts_asst_supp_exp_date,previous_version,crdb_branch_name +v1.0,2017-05-10,2018-05-10,2018-11-10,N/A,N/A,N/A,N/A,N/A,N/A,release-1.0 +v1.1,2017-10-12,2018-10-12,2019-04-12,N/A,N/A,N/A,N/A,N/A,v1.0,release-1.1 +v2.0,2018-04-04,2019-04-04,2019-10-04,N/A,N/A,N/A,N/A,N/A,v1.1,release-2.0 +v2.1,2018-10-30,2019-10-30,2020-04-30,N/A,N/A,N/A,N/A,N/A,v2.0,release-2.1 +v19.1,2019-04-30,2020-04-30,2020-10-30,N/A,N/A,N/A,N/A,N/A,v2.1,release-19.1 +v19.2,2019-11-12,2020-11-12,2021-05-12,N/A,N/A,N/A,N/A,N/A,v19.1,release-19.2 +v20.1,2020-05-12,2021-05-12,2021-11-12,N/A,N/A,N/A,N/A,N/A,v19.2,release-20.1 +v20.2,2020-11-10,2021-11-10,2022-05-10,N/A,N/A,N/A,N/A,N/A,v20.1,release-20.2 +v21.1,2021-05-18,2022-05-18,2022-11-18,N/A,N/A,N/A,N/A,N/A,v20.2,release-21.1 +v21.2,2021-11-16,2022-11-16,2023-05-16,N/A,N/A,N/A,N/A,N/A,v21.1,release-21.2 +v22.1,2022-05-24,2023-05-24,2023-11-24,N/A,N/A,N/A,N/A,N/A,v21.2,release-22.1 +v22.2,2022-12-05,2023-12-05,2024-06-05,N/A,N/A,N/A,N/A,N/A,v22.1,release-22.2 +v23.1,2023-05-15,2024-05-15,2024-11-15,23.1.11,23.1.12,2023-11-13,2024-11-13,2025-11-13,v22.2,release-23.1 +v23.2,2024-02-05,2025-02-05,2025-08-05,23.2.6,23.2.7,2024-07-08,2025-07-08,2026-07-08,v23.1,release-23.2 +v24.1,2024-05-20,2025-05-20,2025-11-20,24.1.5,24.1.6,2024-10-21,2025-10-21,2026-10-21,v23.2,release-24.1 +v24.2,2024-08-12,2025-02-12,N/A,N/A,N/A,N/A,N/A,N/A,v24.1,release-24.2 +v24.3,2024-11-18,2025-11-18,2026-05-18,N/A,N/A,N/A,N/A,N/A,v24.2,release-24.3 +v25.1,2025-02-18,2026-08-18,N/A,N/A,N/A,N/A,N/A,N/A,v24.3,release-25.1 diff --git a/src/current/_includes/releases/v24.3/v24.3.7.md b/src/current/_includes/releases/v24.3/v24.3.7.md new file mode 100644 index 00000000000..2661fecd318 --- /dev/null +++ b/src/current/_includes/releases/v24.3/v24.3.7.md @@ -0,0 +1,183 @@ +## v24.3.7 + +Release Date: March 1, 2025 + +{% include releases/new-release-downloads-docker-image.md release=include.release %} + +

SQL language changes

+ +- The `optimizer_prefer_bounded_cardinality` + session setting has been added which instructs the optimizer to prefer + query plans where every expression has a guaranteed upper-bound on the + number of rows it will process. This may help the optimizer produce + better query plans in some cases. This setting is disabled by default. [#140998][#140998] +- The `optimizer_prefer_bounded_cardinality` + session setting has been added which instructs the optimizer to prefer + query plans where every expression has a guaranteed upper-bound on the + number of rows it will process. This may help the optimizer produce + better query plans in some cases. This setting is disabled by default. [#140255][#140255] +- The `optimizer_min_row_count` session setting + has been added which sets a lower bound on row count estimates for + relational expressions during query planning. A value of zero, which is + the default, indicates no lower bound. Note that if this is set to a + value greater than zero, a row count of zero can still be estimated for + expressions with a cardinality of zero, e.g., for a contradictory + filter. Setting this to a value higher than 0, such as 1, may yield + better query plans in some cases, such as when statistics are frequently + stale and inaccurate. [#140255][#140255] +- The `optimizer_min_row_count` session setting + has been added which sets a lower bound on row count estimates for + relational expressions during query planning. A value of zero, which is + the default, indicates no lower bound. Note that if this is set to a + value greater than zero, a row count of zero can still be estimated for + expressions with a cardinality of zero, e.g., for a contradictory + filter. Setting this to a value higher than 0, such as 1, may yield + better query plans in some cases, such as when statistics are frequently + stale and inaccurate. [#140998][#140998] +- Since v23.2 table statistics histograms have + been collected for non-indexed JSON columns. Histograms are no longer + collected for these columns if `sql.stats.non_indexed_json_histograms.enabled` + is set to `false`. This reduces memory usage during table + statistics collection, for both automatic and manual collection via + `ANALYZE` and `CREATE STATISTICS`. [#139897][#139897] +- The `optimizer_check_input_min_row_count` + session setting has been added to control the minimum row count estimate + for buffer scans of foreign key and unqiueness checks. It defaults to 0. [#141375][#141375] +- Since v23.2 table statistics histograms have + been collected for non-indexed JSON columns. Histograms are no longer + collected for these columns if `sql.stats.non_indexed_json_histograms.enabled` + is set to `false`. This reduces memory usage during table + statistics collection, for both automatic and manual collection via + `ANALYZE` and `CREATE STATISTICS`. [#140998][#140998] +- Added support for a new index hint, + AVOID_FULL_SCAN, which will prevent the optimizer from planning a + full scan for the specified table if any other plan is possible. The + hint can be used in the same way as other existing index hints. For + example, SELECT * FROM table_name@{AVOID_FULL_SCAN};. This hint is + similar to NO_FULL_SCAN, but will not error if a full scan cannot be + avoided. Note that normally a full scan of a partial index would not + be considered a "full scan" for the purposes of the NO_FULL_SCAN and + AVOID_FULL_SCAN hints, but if the user has explicitly forced the + partial index via FORCE_INDEX=index_name, we do consider it a full + scan. [#140255][#140255] +- Added support for a new index hint, + AVOID_FULL_SCAN, which will prevent the optimizer from planning a + full scan for the specified table if any other plan is possible. The + hint can be used in the same way as other existing index hints. For + example, SELECT * FROM table_name@{AVOID_FULL_SCAN};. This hint is + similar to NO_FULL_SCAN, but will not error if a full scan cannot be + avoided. Note that normally a full scan of a partial index would not + be considered a "full scan" for the purposes of the NO_FULL_SCAN and + AVOID_FULL_SCAN hints, but if the user has explicitly forced the + partial index via FORCE_INDEX=index_name, we do consider it a full + scan. [#140998][#140998] +- Fixed a bug existing only in pre-release versions + of v25.1 which could cause unexpected errors during planning for `VALUES` + expressions containing function calls with multiple overloads. [#140646][#140646] + +

Operational changes

+ +- Reduce noise when using dynamically provisioned logging sinks. + + Fixes: https://cockroachlabs.atlassian.net/browse/CLOUDOPS-8044 [#139643][#139643] +- the `node decommission` cli command now waits + until the target node is drained before marking it as fully + decommissioned. Previously, it would start drain but not wait, leaving + the target node briefly in a state where it would be unable to + communicate with the cluster but would still accept client requests + (which would then hang or hit unexpected errors). [#139556][#139556] + +

Command-line changes

+ +- Improves the performance of the debug zip query that collects + transaction_contention_events data, reducing the chances of "memory budget exceeded" or "query + execution canceled due to statement timeout" errors. [#139754][#139754] + +

Bug fixes

+ +- Fixed a bug that could cause SHOW TABLES and + other introspection operations to encounter a "batch timestamp + must be after replica GC threshold" error. [#140084][#140084] +- Fixed a bug that could cause SHOW TABLES and + other introspection operations to encounter a "batch timestamp + must be after replica GC threshold" error. [#140284][#140284] +- Fixed a bug where dropping a table with a + trigger using the legacy schema changer could leave an orphaned + reference in the descriptor. This occurred when two tables were + dependent on each other via a trigger, and the table containing the + trigger was dropped. [#141179][#141179] +- Fixed a bug that could cause SHOW TABLES and + other introspection operations to encounter a "batch timestamp + must be after replica GC threshold" error. [#141720][#141720] +- Fixes a bug where sometimes activating + diagnostics for sql activity appears unresponsive, with no + state or status update upon activating. Now, the status should + always reflect that diagnosticsa are active or that a statement + bundle is downloadable. [#139585][#139585] +- Fixed a bug that would cause an internal error + when the result of a RECORD-returning UDF was wrapped by another expression + (such as COALESCE) within a VALUES clause. [#140646][#140646] +- We have resolved an issue in the Kafka v2 sink + configuration within CockroachDB, where users were previously unable to + set negative GZIP compression levels. Now, users can configure the + CompressionLevel for the Kafka sink in the range of [-2, 9]. Please + update the user guide to include the new valid GZIP compression level + range of [-2, 9], where -2 enables Huffman encoding and -1 sets the + default compression. [#141037][#141037] +- Bounded memory leak that could previously occur + when evaluating some memory-intensive queries via the vectorized engine + in CockroachDB has now been fixed. The leak has been present since 20.2 + version. [#139095][#139095] +- Fixed a bug that could prevent SHOW CREATE TABLE + from working if a database was offline (e.g., due to a RESTORE on that + database). [#141509][#141509] +- Data distribution page in + advanced debug will no longer crash if there are null + values for `raw_sql_config` in `crdb_internal.zones`. [#140661][#140661] +- Fixed possible index corruption caused by triggers + that could occur when the following conditions were satisfied: + 1. A query calls a UDF or stored procedure, and also performs a mutation + on a table. + 2. The UDF/SP contains a statement that either fires an AFTER trigger, or + fires a cascade that itself fires a trigger. + 3. The trigger modifies the same row as the outer statement. + 4. Either the outer or inner mutation is something other than an INSERT + without an `ON CONFLICT` clause. [#138361][#138361] +- Fix a rare bug in which a query might fail with + error "could not find computed column expression for column in table" + while dropping a virtual computed column from the table. This bug was + introduced in v23.2.4. [#139833][#139833] +- fix a bug that prevented starting multi-table LDR streams on tables that used user-defined types. + Epic: none. + + Fixes #141598. [#141793][#141793] +- A bug has been fixed that could cause "nil + pointer dereference" errors when executing statements with UDFs. The + error could also occur when executing statements with some built-in + functions, like obj_description. [#141652][#141652] +- Removes duplicate columns in the parquet + output from changefeeds using cdc queries. [#140153][#140153] + + +[#140998]: https://github.com/cockroachdb/cockroach/pull/140998 +[#141375]: https://github.com/cockroachdb/cockroach/pull/141375 +[#139556]: https://github.com/cockroachdb/cockroach/pull/139556 +[#141179]: https://github.com/cockroachdb/cockroach/pull/141179 +[#139095]: https://github.com/cockroachdb/cockroach/pull/139095 +[#141509]: https://github.com/cockroachdb/cockroach/pull/141509 +[#139833]: https://github.com/cockroachdb/cockroach/pull/139833 +[#139643]: https://github.com/cockroachdb/cockroach/pull/139643 +[#140084]: https://github.com/cockroachdb/cockroach/pull/140084 +[#141037]: https://github.com/cockroachdb/cockroach/pull/141037 +[#141652]: https://github.com/cockroachdb/cockroach/pull/141652 +[#140255]: https://github.com/cockroachdb/cockroach/pull/140255 +[#139754]: https://github.com/cockroachdb/cockroach/pull/139754 +[#139585]: https://github.com/cockroachdb/cockroach/pull/139585 +[#140661]: https://github.com/cockroachdb/cockroach/pull/140661 +[#141793]: https://github.com/cockroachdb/cockroach/pull/141793 +[#139897]: https://github.com/cockroachdb/cockroach/pull/139897 +[#140646]: https://github.com/cockroachdb/cockroach/pull/140646 +[#140284]: https://github.com/cockroachdb/cockroach/pull/140284 +[#141720]: https://github.com/cockroachdb/cockroach/pull/141720 +[#138361]: https://github.com/cockroachdb/cockroach/pull/138361 +[#140153]: https://github.com/cockroachdb/cockroach/pull/140153