What's New in beta-20161027

Oct 27, 2016

Get future release notes emailed to you:


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

Yes No

Yes No