Release Notes for CockroachDB v2.0-alpha.20180212

(Swati Kumar) #1

February 12, 2018

Happy Monday!

This week's release includes:
  • The ON DELETE SET DEFAULT, ON UPDATE SET DEFAULT, ON DELETE SET NULL, and ON UPDATE SET NULL foreign key constraint actions are now fully supported.
  • The likelihood of serializable restarts seen by clients due to concurrent workloads was significantly reduced.
  • Sequences are now supported in enterprise BACKUP/RESTORE jobs.

Download here and let us know what you think!

The Cockroach Labs Team

Enterprise Edition Changes

  • Sequences are now supported in enterprise BACKUP/RESTORE jobs.

    This changes how sequences are stored in the key-value storage layer, so existing sequences must be dropped and recreated. Since a sequence cannot be dropped while it is being used in a column's DEFAULT expression, those expressions must be dropped before the sequence is dropped, and recreated after the sequence is recreated. The setval function can be used to set the value of a sequence to what it was previously. #21684

SQL Language Changes

  • Casts between array types are now allowed when a cast between the parameter types is allowed. #22338
  • Scalar functions can now be used in FROM clauses. #22314
  • Added privilege checks on sequences. #22284
  • The ON DELETE SET DEFAULT, ON UPDATE SET DEFAULT, ON DELETE SET NULL, and ON UPDATE SET NULL foreign key constraint actions are now fully supported. #22220 #21767 #21716
  • JSON inverted indexes can now be specified in a CREATE TABLE statement. #22217
  • When a node is gracefully shut down, planning queries are avoided and distributed queries are allowed the amount of time specified by the the new server.drain_max_wait cluster setting before the node is drained and stopped. #20450
  • Collated string are now supported in IMPORT jobs. #21859
  • The new SHOW GRANTS ON ROLE statement and pg_catalog.pg_auth_members table lists role memberships. #22205 #21780
  • Role memberships are now considered in permission checks. #21820

Command-Line Changes

  • Debug commands now open RocksDB in read-only mode. This makes them faster and able to run in parallel. #21778
  • The cockroach dump command now outputs CREATE SEQUENCE statements before the CREATE TABLE statements that use them. #21774
  • For better compatibility with psql's extended format, the table formatter records now properly indicates line continuations in multi-line rows. #22325
  • The cockroach sql client-side option show_times is now always enabled when output goes to a terminal, not just when display_format is set to pretty. #22326
  • When formatting cockroach sql results with --format=sql, the row count is now printed in a SQL comment at the end. #22327
  • When formatting cockroach sql results with --format=csv or --format=tsv, result rows that contain special characters are now quoted properly. #19306

Admin UI Changes

  • Added an icon to indicate when descriptions in the Jobs table are shortened and expandable. #22221
  • Added "compaction queue" graphs to the Queues dashboard. #22218
  • Added Raft snapshot queue metrics to the Queue dashboard. #22210
  • When there are dead nodes, they are now show before live nodes on the Nodes List page. #22222
  • Links to documentation in the Admin UI now point to the docs for v2.0. #21894

Bug Fixes

  • Errors from DDL statements sent by a client as part of a transaction, but in a different query string than the final commit, are no longer silently swallowed. #21829
  • Fixed a bug in cascading foreign key actions. #21799
  • Tabular results where the column labels contain newline characters are now rendered properly. #19306
  • Fixed a bug that prevented long descriptions in the Admin UI Jobs table from being collapsed after being expanding. #22221
  • Fixed a bug that prevented using SHOW GRANTS with a grantee but no targets. #21864
  • Fixed a panic with certain queries involving the REGCLASS type. #22310
  • Fixed the behavior and types of the encode() and decode() functions. #22230
  • Fixed a bug that prevented passing the same tuple for FROM and TO in ALTER TABLE ... SCATTER. #21830
  • Fixed a regression that caused certain queries using LIKE or SIMILAR TO with an indexed column to be slow. #21842
  • Fixed a stack overflow in the code for shutting down a server when out of disk space #21768
  • Fixed Windows release builds. #21793
  • Fixed an issue with the wire-formatting of BYTES arrays. #21712
  • Fixed a bug that could lead to a node crashing and needing to be reinitialized. #21771
  • When a database is created, dropped, or renamed, the SQL session is blocked until the effects of the operation are visible to future queries in that session. #21900
  • Fixed a bug where healthy nodes could appear as "Suspect" in the Admin UI if the web browser's local clock was skewed. #22237

Performance Improvements

  • Significantly reduced the likelihood of serializable restarts seen by clients due to concurrent workloads. #21140
  • Reduced disruption from nodes recovering from network partitions. #22316
  • Improved the performance of scans by copying less data in memory. #22309
  • Slightly improved the performance of low-level scan operations. #22244
  • When a range grows too large, writes are now be backpressured until the range is successfully able to split. This prevents unbounded range growth and improves a clusters ability to stay healthy under hotspot workloads. #21777
  • The information_schema and pg_catalog databases are now faster to query. #21609
  • Reduced the write amplification of Raft replication. #20647

Doc Updates


This release includes 133 merged PRs by 28 authors. We would like to thank the contributors from the CockroachDB community, especially first-time contributor pocockn.