March 12, 2018
In this release, we’ve enhanced our debug pages to support graphing custom metrics, improved handling of large deletes, and fixed several bugs.
Get future release notes emailed to you:
Downloads
Build Changes
- Binaries are now built with Go 1.10 by default. #23311
General Changes
- Logging data is now flushed to files every second to aid troubleshooting and monitoring. Synchronization to disk is performed separately every 30 seconds. #23231
- Disabling diagnostics reporting also disables new version notification checks. #23007
- Removed the
diagnostics.reporting.report_metrics
cluster setting, which is duplicative with theCOCKROACH_SKIP_ENABLING_DIAGNOSTIC_REPORTING
environment variable. #23007 - All internal error messages are now logged when logging is set to a high enough verbosity. #23127
SQL Language Changes
- Improved handling of large
DELETE
statements. They are now either allowed to complete or exited with an error message indicating that the transaction is too large to complete. #23289 - The
pg_catalog
virtual tables, as well as the special casts::regproc
and::regclass
, can now only be queried by clients that set a current database. #23148
Command-Line Changes
- When a node spends more than 30 seconds waiting for an
init
command or to join a cluster, a help message now gets prints tostdout
. #23181
Admin UI Changes
- Added a new debug page that allows users to create a "custom" graph displaying any combination of metrics. #23227
- In the geographical map on the homepage of the Admin UI enterprise version, node components now link to Note Details page. #23283
- Removed the Keys Written per Second per Store graph. #23303
- Added the Lead Transferee field to the Range Debug page. #23241
Bug Fixes
- Fixed a correctness bug where some
ORDER BY
queries would not return the correct results. #23541 - The Admin UI no longer hangs after a node's network configuration has changed. #23348
- The binary format for
JSONB
values is now supported. #23215 - A node now waits in an unready state for the length of time specified by the
server.shutdown.drain_wait
cluster setting before draining. This helps ensure that load balancers will not send client traffic to a node about to be drained. #23319 - Fixed a panic when using
UPSERT ... RETURNING
withUNION
. #23317 - Prevented disruptions in performance when gracefully shutting down a node. #23300
- Hardened the cluster version upgrade mechanism. Rapid upgrades through more than two versions could sometimes fail recoverably. #23287
- Fixed a deadlock when tables are rapidly created or dropped. #23288
- Fixed a small memory leak in
IMPORT
CSV. #23259 - Prevented a panic in DistSQL under certain error conditions. #23201
- Added a readiness endpoint (
/health?ready=1
) for better integration with load balancers. #23247 - Fixed a zero QPS scenario when gracefully shutting down a node. #23246
- Secondary log files (e.g., the SQL execution log) are now periodically flushed to disk, in addition to the flush
that occurs naturally when single log files are full (
--log-file-max-size
) and when the process terminates gracefully. Log file rotation is also now properly active for these files. #23231 - Previously, the
ranges
column in thenode status
command output only included ranges whose raft leader was on the node in question. It now includes the count of all ranges on the node, regardless of where the raft leader is. #23180 - Fixed a panic caused by empty
COCKROACH_UPDATE_CHECK_URL
orCOCKROACH_USAGE_REPORT_URL
environment variables. [#23008][#23008] - Prevented stale reads caused by the system clock moving backwards while the
cockroach
process is not running. #23122 - Corrected the handling of cases where a replica fails to retrieve the last processed timestamp of a queue. #23127
- Fixed a bug where the liveness status would not always display correctly on the single-node page in the Admin UI. #23193
- Fixed a bug that showed incorrect descriptions on the Jobs page in the Admin UI. #23256
Doc Updates
- Updated the GCE deployment tutorial with guidance on increasing the backend timeout setting for TCP Proxy load balancers. #2687
- Documented read refreshing in the CockroachDB architecture documentation. #2684
- Updated the explanation of automatic retries. #2680
- Documented changes to the built-in replication zone. #2677
- Updated the
information_schema
documentation to cover new views. #2675 #2673 #2672 #2668 #2662 #2654 #2637 - Clarified the target of the
cockroach init
command. #2670 - Added details about how to monitor clock offsets. #2663
- Documented how to perform a rolling upgrade on a Kubernetes-orchestrated cluster. #2661
- Updated the Azure deployment tutorial with correct network security rule guidance. #2653
- Improved the documentation of the
cockroach node status
command. #2639 - Clarified that the
DROP COLUMN
statement now dropsCHECK
constraints. #2638 - Added details about disk space usage after deletes and select performance on deleted rows. #2635
- Clarified that
DROP INDEX .. CASCADE
is required to drop aUNIQUE
index. #2633 - Updated the
EXPLAIN
documentation to identify all explainable statements, cover the new output structure, and better explain the contents of theOrdering
column. #2632 #2682 - Defined "range lease" in the CockroachDB architecture overview. #2625
- Added an FAQ on preparing for planned node maintenance. #2600
Contributors
This release includes 44 merged PRs by 21 authors.