Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release Notes for v24.3-v24.3.7 #19403

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 28 additions & 0 deletions src/current/_data/releases.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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
38 changes: 19 additions & 19 deletions src/current/_data/versions.csv
Original file line number Diff line number Diff line change
@@ -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
183 changes: 183 additions & 0 deletions src/current/_includes/releases/v24.3/v24.3.7.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,183 @@
## v24.3.7

Release Date: March 1, 2025

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

<h3 id="v24-3-7-sql-language-changes">SQL language changes</h3>

- 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]

<h3 id="v24-3-7-operational-changes">Operational changes</h3>

- 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]

<h3 id="v24-3-7-command-line-changes">Command-line changes</h3>

- 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]

<h3 id="v24-3-7-bug-fixes">Bug fixes</h3>

- 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
Loading