What's New in beta-20160609

Jun 9, 2016

Get future release notes emailed to you:


New Features

  • The SERIAL column type is now supported as an alias for INT DEFAULT unique_rowid(). In CockroachDB, this type defaults to a unique 64-bit signed integer that is the combination of the insert timestamp and the ID of the node executing the insert. It therefore differs from similar types in PostgreSQL and MySQL, which auto-increment integers in an approximate sequence. #7032
  • For client-side transaction retries, reissuing the original SAVEPOINT cockroach_restart now has the same effect as ROLLBACK TO SAVEPOINT cockroach_restart. This improves compatibility with some client drivers. #6955
  • FAMILY is now a reserved word in the SQL dialect in preparation for a future feature. #7069

Bug Fixes

  • The command-line SQL shell is now able to print non-ASCII characters. #7045, #7048
  • Commands issued with a timestamp outside the garbage collection window will now always fail. #6992
  • All aggregate functions now return NULL when run on a table with no rows. #7043

Performance Improvements

  • jemalloc is now used as the memory allocator for the C++ portions of the server. The build tag stdmalloc can be used to switch back to the standard malloc. #7006
  • Raft logs are now garbage collected more aggressively. This should generally make snapshots smaller, reducing memory pressure, but sometimes it may cause more snapshots to be sent. #7040
  • Reduced allocations in INSERT and UPDATE statements involving secondary indexes. #7011
  • Improved performance of conditional puts with no existing value. #7016
  • Improved performance of small transactions. #7015

Doc Updates


This release includes 56 merged PRs by 17 authors. We would like to thank the following contributors from the CockroachDB community, especially first-time contributor Alex Robinson:

  • Alex Robinson
  • Kenji Kaneda
  • Paul Steffensen
YesYes NoNo