Release Notes for Beta-20161027

What's new in CockroachDB beta-20161027


Hi there,

Another busy few weeks at Cockroach Labs. In our latest beta release, you can see we're making good strides towards full support for distributed SQL. We've also made progress on performance, and minimal backwards-incompatible changes. 

You can download the new beta here.


The Cockroach Labs Team


Oct 27, 2016

Backwards-Incompatible Changes

  • Functions that return the current time - including now() - now return values of type TIMESTAMP WITH TIME ZONE instead of TIMESTAMP, unless called from a context that expects the latter type. #9618

SQL Language Changes

  • Views are now supported. Views are stored queries, represented as virtual tables, that produce a result set when requested. They can be used to hide query complexity, limit access to underlying data, or simplify the process of supporting legacy code.
  • Tables in the pg_catalog database can now be accessed with unqualified names if no table of the same name exists in the current database. #9927
  • AS OF SYSTEM TIME queries now support the decimal format returned by cluster_logical_timestamp() for maximum precision. #9934
  • The CASCADE option of DROP TABLE and ALTER TABLE DROP COLUMN now drops views that depend on the table or column; it is now an error to attempt to drop a table or column with dependent views without either using this option or dropping the views first. #9724, #10124
  • SET DEFAULT_TRANSACTION_ISOLATION is now supported, improving compatibility with psycopg2. #10087
  • The pg_catalog.pg_indexes and pg_catalog.pg_constraint tables are now supported. #9869, #9991
  • EXPLAIN can now be used with SHOW, HELP, and ALTER TABLE ... SPLIT. #10013
  • The current_schemas() function is now supported, improving compatibility with ActiveRecord. #9604
  • The SHOW ALL statement is now supported. #10195
  • The DROP INDEX and ALTER INDEX statements can now use unqualified index names. #10091

Command-Line Interface Changes

  • The --host flag in client commands such as cockroach sql now defaults to localhost in both secure and insecure modes. #10134
  • Improved error messages when a server is down or certificates are not configured correctly. #9917
  • The --key flag can now be passed via the environment variable COCKROACH_KEY, matching other similar flags. #10092

Performance Improvements

  • RocksDB bloom filters now use 10x less memory, with a negligible reduction in speed. #10085
  • Old time-series data is now garbage collected. #9959
  • Reduced overhead of the internal time-series metric system. #9889
  • Reduced impact of schema changes on regular queries. #9798
  • In the event of a node failure, schema changes now save their progress and can resume from their last checkpoint instead of restarting from the beginning. #10036
  • Ranges are now split more eagerly when tables are created or data is growing rapidly. #10232

Bug Fixes

  • Certain network- and timeout-related errors will now return the error “transaction commit result is ambiguous” when it cannot be determined whether a transaction committed or not. This fixes bugs in which statements outside of transactions could be applied twice, and other transactions may incorrectly report unique constraint violations. #10207
  • SET TIME ZONE 0 now sets the session time zone to UTC (other numbers already worked). #9992
  • SHOW statements for session variables now work correctly when prepared and executed separately. #10013
  • Columns that are a part of the primary key can now be renamed. #10018
  • Fixed a panic during transaction rollback. #9961
  • Float comparisons involving NaN are now correct in all cases. #10112
  • Clock offset monitoring is now more sensitive. #10185
  • The rebalancer is now better able to avoid placing a replica on a store that has previously had a corrupted replica of the same range. #10141
  • More complex expressions involving window functions are now supported. #10186
  • Fixed a deadlock that could occur when using the Prometheus metrics endpoint. #10228


This release includes 182 merged PRs by 24 authors. We would like to thank the following contributors from the CockroachDB, including first-time contributor Haines Chan.

  • Haines Chan
  • songhao