June 21, 2021
This page lists additions and changes in v21.1.3 since v21.1.2.
- For a comprehensive summary of features in v21.1, see the v21.1 GA release notes.
- To upgrade to v21.1, see Upgrade to CockroachDB v21.1.
Get future release notes emailed to you:
Downloads
Warning:
The CockroachDB executable for Windows is experimental and not suitable for production deployments. Windows 8 or higher is required.
Docker image
$ docker pull cockroachdb/cockroach:v21.1.3
Security updates
- Syntax errors in the host-based authentication (HBA) configuration in cluster setting
server.host_based_authentication.configuration
are now logged on the OPS channel. #66128 - The
User
andApplicationName
fields of structured events pertaining to SQL queries are now marked as non-sensitive when they contain certain values (root
/node
forUser
and values starting with$
for application names). #66443
Enterprise edition changes
- Changefeeds with custom Kafka client configurations (using the
kafka_sink_config
object) that could lead to long delays in flushing messages will now produce an error. #66265 - The
kafka_sink_config
object now supports aversion
configuration item to specify Kafka server versions. This is likely only necessary for old (Kafka 0.11/Confluent 3.3 or earlier) Kafka servers. Additionally, settings not specified inkafka_sink_config
now retain their default values. #66314
SQL language changes
TRUNCATE
is now less disruptive on tables with a large amount of concurrent traffic. #65940- Creating
STORED
orVIRTUAL
computed columns with expressions that reference foreign key columns is now allowed. #66168 - The new function
crdb_internal.get_vmodule
returns the currentvmodule
configuration on the node processing the request. #63545 - The description string for the
random()
function now clarifies that there are at most 53 bits of randomness available; that is, the function is unsuitable to generate 64-bit random integer values. This behavior is similar to that of PostgreSQL. #66128 EXPLAIN ANALYZE
now displays information about the regions on which a statement was executed. #66368
Operational changes
- Added a configurable limit to the number of intents collected by a
scan
before aborting, to prevent out-of-memory errors. The settingstorage.mvcc.max_intents_per_error
replacesstorage.sst_export.max_intents_per_error
and covers bothscan
andexport
commands. #65923 BACKUP
now puts backup data files in adata
sub-directory of theBACKUP
path instead of directly in the backup path. #66161
Command-line changes
- The informational messages printed out when
cockroach demo
starts have been updated to clarify that certain information is only needed when accessing the demo cluster from another tool. #66129 cockroach demo
andcockroach sql
are now able to run client-side commands via the-e
command-line flag. This makes it possible to use commands like\dt
or\hf
from a shell script. #66326
DB Console changes
- Users can now reset SQL stats from the DB Console. #65916
- Removed shading on line graphs, improving legibility when viewing more than a few series on the same plot. #66032
- Drag-to-zoom on metrics graphs now supports time ranges under 10 minutes. #66032
- In some cases, the Execution Stats page would show a very high Overhead latency for a statement. This could happen due to multiple statements being parsed together or due to statement execution being retried. To avoid this, we no longer consider the time between when parsing ends and execution begins when determining service latency. #66108
- Improved the style of the password input field for Safari. #66134
- The metrics chart under Overview was renamed from
SQL Queries
toSQL Statements
to match the naming used under SQL Metrics. #66364
Bug fixes
- Fixed a bug which prevented adding columns to tables which contain data and use
NOT NULL
virtual columns #65973 - Fixed a bug in the DB Console where graphs for clusters with decommissioned nodes could show an empty series and data could be incorrectly attributed to the wrong nodes. #66032
- Fixed a bug where queries on
REGIONAL BY ROW
tables could fail in the brief window in which a DROP REGION operation is in progress. #65984 - Fixed a bug where a schema's privilege descriptor could be corrupted upon executing
ALTER DATABASE ... CONVERT TO SCHEMA
, where privileges invalid on a schema were copied from the database, rendering the schema unusable. #65993 - Fixed the error classification for duplicate index names where the later index was a
UNIQUE
index. #64000 - Fixed the error classification for
ALTER TABLE ... ADD CONSTRAINT ... UNIQUE
with the same name as an existing index. #64000 - Fixed a bug that made it less likely for range merges to succeed on clusters using multiple stores per node is now fixed. #65889
- Improved
TRUNCATE
operations to prevent contention issues. #65940 - Improved garbage collection of stale replicas by proactively checking certain replicas that have lost contact with other voting replicas. #65186
- Fixed a bug in
SHOW RANGES
which misattributed localities to nodes when using multiple stores. #66037 - Queries run through the
EXECUTE
statement can now generate statement diagnostic bundles as expected. #66098 - Previously, an
INSERT
causing a foreign key violation could result in an internal error in rare cases. The bug only affected the error response; any affectedINSERT
s (which would have been foreign-key violations) did not succeed. This bug, present since v21.1.0, has been fixed. #66300 BACKUP
and other operations can now reuse a previously created S3 client session when operating on the same bucket, which can avoidNoCredentialProviders
errors on EC2 when interating with large incremental backups. #66259- The command exit status of
cockroach demo
andcockroach sql
is now properly set to non-zero (error) after an error is encountered in a client-side command. Additionally,cockroach sql
andcockroach demo
now properly stop upon encountering an invalid configuration with--set
, instead of starting to execute SQL statements after the invalid configuration. #66326 - Improved the availability of the jobs table for reads in large, global clusters by running background tasks at low priority. #66344
- Backups no longer risk the possibility of blocking conflicting writes while being rate limited by the
kv.bulk_io_write.concurrent_export_requests
concurrency limit. #66408 - The
soundex
andst_difference
builtin functions for fuzzy string matching now correctly handleNULL
values. #66302
Performance improvements
- Fixed an issue in the optimizer that prevented spatial predicates of the form
(column && value) = true
from being index-accelerated. These queries can now use a spatial index if one is available. #65986 - The optimizer is now more efficient when planning queries on tables that have many columns and indexes. #66304
- The
COCKROACHDB_REGISTRY
file is no longer rewritten whenever a new unencrypted file is created. #66423 - After improvements, queries use up to 1MB less system memory per scan, lookup join, index join, zigzag join, or inverted join in their query plans. This will result in improved memory performance for workloads with concurrent OLAP-style queries. #66145
- Made improvements to prevent intra-query leaks during disk spilling that could cause the database to run out of memory, especially on tables with wide rows. #66145
Contributors
This release includes 64 merged PRs by 35 authors.