What's New in v2.0.2

This version of CockroachDB is no longer supported. For more details, see the Release Support Policy.

May 21, 2018

Get future release notes emailed to you:


General Changes

  • The header of new log files generated by cockroach start will now include the cluster ID once it has been determined. #24982
  • The cluster ID is now reported with tag [config] in the first log file, not only when log files are rotated. #24982
  • Stopped spamming the server logs with "error closing gzip response writer" messages. #25108

SQL Language Changes

  • Added more ways to specify an index name for statements that require one (e.g., DROP INDEX, ALTER INDEX ... RENAME, etc.), improving PostgreSQL compatibility. #24817
  • Clarified the error message produced upon accessing a virtual schema with no database prefix (e.g., when database is not set). #24809
  • STORED is no longer a reserved keyword and can again be used as an unrestricted name for databases, tables and columns. #24864
  • Errors detected by SHOW SYNTAX are now tracked internally like other SQL errors. #24900
  • IMPORT now supports hex-encoded byte literals for BYTES columns. #25063
  • Collated strings can now be used in WHERE clauses on indexed columns. #25175
  • The Level and Type columns of EXPLAIN (VERBOSE) results are now hidden; if they are needed, they can be SELECTed explicitly. #25206

Admin UI Changes

  • Added RocksDB compactions/flushes to storage graphs. #25457

Bug Fixes

  • It is once again possible to use a simply qualified table name in qualified stars (e.g., SELECT mydb.kv.* FROM kv) for compatibility with CockroachDB v1.x. #24842
  • Fixed a scenario in which a node could deadlock while starting up. #24831
  • Ranges in partitioned tables now properly split to respect their configured maximum size. #24912
  • Some kinds of schema change errors that were stuck in a permanent loop now correctly fail. #25015
  • When adding a column, CockroachDB now verifies that the column is referenced by no more than one foreign key. Existing tables with a column that is used by multiple foreign key constraints should be manually changed to have at most one foreign key per column. #25079
  • CockroachDB now properly reports an error when using the internal-only functions final_variance() and final_stddev() instead of causing a crash. #25218
  • The constraint_schema column in information_schema.constraint_column_usage now displays the constraint's schema instead of its catalog. #25220
  • Fix a panic caused by certain queries containing OFFSET and ORDER BY. #25238
  • BEGIN; RELEASE SAVEPOINT now returns an error instead of causing a crash. #25251
  • Fixed a rare segfault that occurred when reading from an invalid memory location returned from C++. #25361
  • Fixed a bug with IS DISTINCT FROM not returning NULL values that pass the condition in some cases. #25339
  • Restarting a CockroachDB server on Windows no longer fails due to file system locks in the store directory. #25439
  • Prevented the consistency checker from deadlocking. This would previously manifest itself as a steady number of replicas queued for consistency checking on one or more nodes and would resolve by restarting the affected nodes. #25474
  • Fixed problems with IMPORT sometimes failing after node decommissioning. #25307
  • Fixed a bug causing PREPARE to hang when run in the same transaction as a CREATE TABLE statement. #24874

Build Changes

  • Build metadata, like the commit SHA and build time, is properly injected into the binary when using Go 1.10 and building from a symlink. #25062

Doc Updates

  • Improved the documentation of the now(), current_time(), current_date(), current_timestamp(), clock_timestamp(), statement_timestamp(), cluster_logical_timestamp(), and age() built-in functions. #25383 #25145


This release includes 42 merged PRs by 16 authors. We would like to thank the following contributors from the CockroachDB community:

  • Garvit Juniwal
  • Jingguo Yao
YesYes NoNo