What's New in beta-20170309

Mar 9, 2017

Get future release notes emailed to you:


General Changes

  • CockroachDB now uses Go 1.8. #13673
  • CockroachDB now uses RocksDB 5.1.4. #13831

SQL Language Changes

  • Table names are now released as soon as the DROP TABLE statement executes, instead of being held until the asynchronous cleanup finishes. #13908
  • Most write statements now accept a RETURNING NOTHING clause to indicate that the query should not return a result (not even the number of rows affected). This will be used in the future to enable optimizations. #13802
  • PostgreSQL-style duration formats are now parsed case-insensitively. #13748
  • Tables with no columns are now handled correctly in the network protocol. #13765
  • COPY no longer requires the input data to end in a newline. #13858
  • SHOW CONSTRAINTS no longer includes constraints involving hidden columns. #13870
  • It is no longer possible to drop system tables. #13911
  • The DESC modifier can now be applied to columns in a PRIMARY KEY or UNIQUE clause during table creation. #13924

Command-Line Interface Changes

  • The cockroach dump command now takes an --as-of flag, which can be used to make a backup as of a particular time.
  • When starting a node, the details printed to stdout are now written to the node's INFO log as well. Also, these details now include node attributes and locality. #1143, #1144

Bug Fixes

  • Fixed (again) a bug in error handling that could causes ranges to get stuck if an error occurred during a rebalance. #13763
  • Work around a bug that could cause GRPC connections to get stuck in a broken state. #13822
  • Panic stack traces are now written to the INFO log file by default instead of to stderr. #13890

Performance Improvements

  • Improved performance in high-contention scenarios by introducing a queue to wait for conflicting transactions to finish. This also reduces the likelihood of transaction restarts due to write/write conflicts. #13501
  • A new lease implementation is now used for most ranges, reducing the number of writes that must be done just to maintain a lease. #13826
  • Reduced the occurrence of AmbiguousResultError by waiting for pending RPCs to complete before returning. #13800
  • Changed some mutexes to RWMutexes. Removed some instrumentation of mutex timing. #13697
  • cockroach dump now works in larger batches. #13812
  • Failed snapshots no longer disrupt regular raft messages. #13816
  • Increased flow control parameters for GRPC connections, improving performance on high-latency links. #13840
  • Increased limits on in-flight raft messages. #13862
  • Range leases are now proactively transferred away from draining nodes. #13792
  • Avoid sending redundant PushTxn calls in intent resolution. #13955

Doc Updates


This release includes 124 merged PRs by 21 authors. We would like to thank first-time contributor Dmitry Vorobev from the CockroachDB community.

YesYes NoNo