May 5, 2017
Get future release notes emailed to you:
Downloads
General Changes
- Diagnostics reporting now includes anonymized query statistics. #15491
SQL Language Changes
- Restrictions on schema changes in transactions with other statements have been relaxed. It is now possible to insert into a table in the same transaction that created it, provided there are no
FOREIGN KEY
orINTERLEAVE
clauses. #15511 - The distributed SQL engine supports queries that internally generate rows with no columns. #15420
- New variables added to the cluster-wide settings:
server.declined_reservation_timeout
,server.failed_reservation_timeout
, andserver.time_until_store_dead
. #15581
Command-Line Interface Changes
- If the new flag
--listening-url-file
is passed tocockroach start
, the server will write its SQL connection URL to the specified file on successful startup, in addition to printing it tostdout
. This is particularly helpful in identifying the node's port when an unused port is assigned automatically (--port=0
).#15468 - The
cockroach sql
shell no longer buffers all results in memory before printing them. #15277 - The log file is now flushed more reliably when a node exits. #15531
- The new flag
--max-offset
on thecockroach start
command defines the maximum allowed clock offset for the cluster and replaces the environment variableCOCKROACH_MAX_OFFSET
. Note that the--max-offset
value must be the same on all nodes in the cluster. In order to change it, every node in the cluster must be stopped and restarted with the new value. #15568 - The
--raft-tick-interval
flag has been removed from thecockroach start
command. #15547 - Certificate and key loading errors during node startup are now reported to the user via
stdout
as well as being written to the log file. #15655
Admin UI Changes
- The number of transactions that would be affected by a change in isolation level is now tracked. #15234
- Improved style of the single node and log pages. #15486
- The event log now refreshes automatically. #15502
- Graphs on the overview page now have tooltips. #15624
Bug Fixes
- Fixed a panic when a query returning a constant
NULL
uses the new distributed execution engine. #15530 - Fixed two issues that could cause requests to get stuck indefinitely. #15557 #15573
- Fixed a rare crash when extending table leases. #15560
- Fixed a crash when a transaction that uses
SAVEPOINT cockroach_restart
does something other thanROLLBACK TO SAVEPOINT
after an error. #15563 - Fixed
RESTORE
for interleaved tables. #15564 - Return parse error instead of panic when constant typechecking fails. #15636
- Prevent persistent distsql and schema change errors after a node dies. #15368
- Previously,
ALTER TABLE ADD COLUMN
with aDEFAULT unique_rowid()
specification could create many duplicate values. This has been corrected. #15628 - Fixed a consistency error in
BACKUP
. #15642 - Fixed incorrect NULL results when using an aggregation with an empty table. #15688
Performance Improvements
- Reduced thrashing in gossip after a rolling restart. #15533
RESTORE
performs its pre-splitting less aggressively. #15548- Improved memory accounting in distributed SQL. #15595, #15610, #15623, #15627
- Queries using session-dependent variables (e.g., time conversions using the session's timezone) are now executed through the distributed SQL engine. #15628
Doc Updates
- Added an FAQ on different ways to log SQL queries. #1359
- Updated local deployment tutorials to have nodes listen only on
localhost
. This ensures these tutorials work even on machines whose hostnames aren’t resolvable. #1358
Contributors
This release includes 85 merged PRs by 24 authors. We would like to thank the following contributors from the CockroachDB community:
- Dmitry Vorobev
- Richard Artoul