February 16, 2021
This page lists additions and changes in v20.2.5 since v20.2.4.
- For a comprehensive summary of features in v20.2, see the v20.2 GA release notes.
- To upgrade to v20.2, see Upgrade to CockroachDB v20.2
Cockroach Labs has discovered a bug relating to incremental backups, for CockroachDB v20.2.0 - v20.2.7. If a backup coincides with an in-progress index creation (backfill), RESTORE
, or IMPORT
, it is possible that a subsequent incremental backup will not include all of the indexed, restored or imported data.
Users are advised to upgrade to v20.2.8 or later, which includes resolutions.
For more information, including other affected versions, see Technical Advisory 63162.
Get future release notes emailed to you:
Downloads
Docker image
$ docker pull cockroachdb/cockroach:v20.2.5
Security updates
- Added the ability to set region-specific callback URLs in the OIDC config. The
server.oidc_authentication.redirect_url
cluster setting can now accept JSON as an alternative to the basic URL string setting. If a JSON value is set, it must contain aredirect_url
key that maps to an object with key-value pairs where the key is aregion
matching an existing locality setting, and the value is a callback URL. #59651
General changes
- CockroachDB now runs fewer threads in parallel if running inside a container with a CPU limit. #59184
- Added ability to further debug connections shut down automatically by the server. #59503
- Renamed instances of "Admin UI" to "DB Console" in the documentation of OIDC cluster settings. #59651
SQL language changes
- Introduced a cluster setting
sql.show_tables.estimated_row_count.enabled
, which defaults totrue
. Ifsql.show_tables.estimated_row_count.enabled=false
,estimated_row_count
will not display onSHOW TABLES
which improves performance. #59776
Command-line changes
- Previously, for certain log files, CockroachDB would both flush individual writes (i.e., propagate them from within the
cockroach
process to the OS) and synchronize writes (i.e., ask the OS to confirm the log data was written to disk). The per-write synchronization part was unnecessary and, in fact, found to be possibly detrimental to performance and operating cost, so it was removed. Meanwhile, the log data continues to be flushed as previously, and CockroachDB periodically (i.e., every 30s) requests synchronization as previously. #58996
API endpoint changes
- The health API now checks that the SQL server is ready to accept clients when a readiness check is requested. #59383
Bug fixes
- CockroachDB could previously return an internal error when evaluating a binary expression between a
DECIMAL
and anINTERVAL
that required a cast to aFLOAT
when the value is out of range. Now a more user-friendly error is returned instead. #58882 - Fixed a bug that caused errors when accessing a tuple column (
tuple.column
syntax) of a tuple that could be statically determined to be null. #58896 - Fixed a nil pointer panic edge case in query setup code. #59003
- Garbage collection jobs now populate the
running_status
column forSHOW JOBS
. #59137 - Fixed a bug in which some non-conflicting rows provided as input to an
INSERT ... ON CONFLICT DO NOTHING
statement could be discarded, and not inserted. This could happen in cases where the table had one or more unique indexes in addition to the primary index, and some of the rows in the input conflicted with existing values in one or more unique indexes. This scenario could cause the rows that did not conflict to be erroneously discarded. #59169 - Fixed a bug causing queries to hang when using large
max_decimal_digits
onST_AsGeoJSON
. #59167 - Improved the accuracy of reported CPU usage when running in containers. #59184
- Fixed a nil pointer panic bug involving
catalog.FilterDescriptorState
. This bug affected all 20.2 versions since v20.2.0. #58998 - Fixed a bug causing CockroachDB to encounter an internal error when executing queries with
BYTES
orSTRING
types via the vectorized engine in rare circumstances. #59151 - Fixed a bug that initialized the GEOS library incorrectly, preventing multi-tenancy SQL pods from starting up correctly. #59260
- Fixed a bug in the URL handling of HTTP external storage paths on Windows #59267
- Fixed a bug causing CockroachDB to encounter an internal error when executing queries with tuples containing
NULL
values andENUM
s in a distributed setting. #59025 - Fixed a bug causing CockroachDB to crash when executing
ALTER INDEX ... SPLIT/UNSPLIT AT
statements when more values were provided than explicitly specified in the index. #59271 - Fixed a panic where type hints mismatching placeholder names caused a crash. #59463
- Previously, CockroachDB did not pass a pointer to the bound account associated with the index backfiller. This would lead to incorrect memory accounting. This bug has been fixed. #59475
- Previously, the
substring
function onBYTES
arrays would treat its input as unicode code points, which would cause the wrong bytes to be returned. Now it only operates on the raw bytes. #59170 - Previously, the
substring(byte[])
functions were not able to interpret bytes that had the\
character, as the functions were treating the character as the beginning of an escape sequence. This is now fixed. #59170
Contributors
This release includes 35 merged PRs by 21 authors. We would like to thank the following contributors from the CockroachDB community:
- Cheng Jing (first-time contributor)