See all blog posts

ScyllaDB release: version 1.6

ScyllaDB Software Release

The ScyllaDB team is pleased to announce the release of ScyllaDB 1.6, a production-ready ScyllaDB minor release.

ScyllaDB is an open source NoSQL database compatible with Apache Cassandra, with superior performance and consistently low latency.

From now on, critical bugs will be fixed in 1.6 and 1.5 release series only. If you are still using open source ScyllaDB 1.4 or earlier release – you are encouraged to upgrade. We will continue to fix bugs and add features on the master branch toward 1.7 and beyond.

 

New features

  • Debian Support (Experimental): starting from ScyllaDB 1.6, ScyllaDB packages are available for Debian 8.
  • Upgradable AMI: You can now use standard procedure to upgrade ScyllaDB AMI version between ScyllaDB maintenance, minor and major releases #1872, #1788.
  • Fetch size auto-tune: ScyllaDB will now dynamically tune the query fetch size to suit the workload. This means that there is now no need to tune the driver fetch size when your columns are very large.
  • Improve range scans: optimized Multi-partition range scans were optimized to reduce CPU and I/O overhead.

Noteworthy new and updated metrics in ScyllaDB 1.6

New metrics format

Starting in 1.6, metrics format is changed from `seastar_(group){measurement=”measurement”, type=”type”}` to `scylla_(group)_(measurement)_(type)`.

If you are using scylla-grafana-monitoring, make sure to pull the latest release, and use 1.6 dashboards.

storage_proxy metrics names changed as follows:

  • Spaces in the metrics names have been replaced with underscores (“_”).
  • Per-DC/local Node split metrics names have changed:
    •  e.g. collectd metrics “total_operations-total write attempts (local Node)” became “derive-total_write_attempts_local_node”
    • “<name> (local Node)” -> “<name>_local_node”
    • “<name> (external Nodes in DC: <DC name>)” -> “<name>_<DC name>”
    • All split metrics have changed their type from total_operations to derive
  • Instead of a single storage_proxy group, there are two groups:
    • received_mutations
    • forwarded_mutations
    • forwarding_errors
    • storage_proxy_coordinator: counters updated by a Coordinator Node, e.g. read_timeouts. These include all but the storage_proxy_replica counters.
    • storage_proxy_replica: counters updated by a Replica Node, e.g. received_mutations. These includes: received_mutations, forwarded_mutations, forwarding_errors

Noteworthy bug fixes

  • Improve data streaming used in repairs and out-scale #883#1917#1826#1815 and others.
  • TitanDB does not work with ScyllaDBdb #693
  • Reduce bloom filter overhead in compaction #1322
  • scylla_setup: select disks to setup XFS showing only unmount disks #1841
  • scylla_setup: ScyllaDB setup does not list local SSD disks on Google Cloud VM, or any other server with a device different from `/dev/sd*` `/dev/vd*` or `/dev/xvd*` #1963
  • ScyllaDB can abort when running out of disk space #1764
  • Error in ScyllaDB install of scylla user already exist #1958
  • Tracing: Starting a Node while other Nodes send RPC messages requesting tracing causes an assert #1939
  • Commit log replay, after restart, may drop Cell mutations of non-current (older) schema #1924
  • Writes are blocked for many seconds when ScyllaDB is not able to keep up with flushing memtables #1879
  • Coredump may cause “no space left on device” on Ubuntu/Debian #1916
  • ScyllaDB falls silently loaded on Ubuntu 16.04 #1199
  • Writes are blocked for many seconds when ScyllaDB is not able to keep up with flushing memtables #1879
  • ScyllaDB becomes very slow and eventually OOMs during large batch writes #1756
  • Thrift: Cell limit being applied across rows #1882
  • When ScyllaDB restarts with large amount of data on disk, it can take a very long time until ScyllaDB starts to accept requests #1856 (also part of 1.5)
  • When a ScyllaDB cluster of 2 or more is created,  simultaneous creation of system_traces keyspace may trigger a family UUID disagreement between nodes #1976

About Tzach Livyatan

Tzach Livyatan has a B.A. and MSc in Computer Science (Technion, Summa Cum Laude), and has had a 15 year career in development, system engineering and product management. In the past he worked in the Telecom domain, focusing on carrier grade systems, signalling, policy and charging applications.