Warning: This document is for the development version of Gnocchi. The latest version is 3.1.5.

Current Series Release Notes


New Features

  • New measures are now sharded into sacks to better distribute data across storage driver as well as allow for improved scheduling of aggregation workload.
  • A Redis driver has been introduced for storing incoming measures and computed timeseries.
  • The S3 driver now checks for data consistency by default. S3 does not guarantee read-after-write consistency when overwriting data. Gnocchi now waits up to s3_check_consistency_timeout seconds before returning and unlocking a metric for new processing. This makes sure that the data that will be read by the next workers will be consistent and that no data will be lost. This feature can be disabled by setting the value to 0.

Upgrade Notes

  • The storage driver needs to be upgraded. The number of sacks to distribute across can be configured on upgrade by passing in num-storage-sacks value on upgrade. A default number of sacks will be created if not set. This can be reconfigured post-upgrade as well by using gnocchi-change-sack-size cli. See documentation for hints on the number of sacks to set for your environment and upgrade notes
  • The storage upgrade is only supported from version 3.1.

Deprecation Notes

  • The noauth authentication mechanism is deprecated and will be removed in a next version.
  • The creation of the legacy Ceilometer resource types has been removed.
  • The custom gnocchi/rest/app.wsgi is now deprecated, the gnocchi-api binary should be used as wsgi script file. For example, with uwsgi “–wsgi-file /usr/lib/python2.7/gnocchi/rest/app.wsgi” should be replaced by “–wsgi-file /usr/bin/gnocchi-api”.

Bug Fixes

  • Previously, s3 storage driver stored aggregates in a bucket per metric. This would quickly run into bucket limit set by s3. s3 storage driver is fixed so it stores all aggregates for all metrics in a single bucket. Buckets previously created by Gnocchi will need to be deleted as they will no longer be handled.

Other Notes

  • A workaround for a Python 2.7 bug in fnmatch has been removed. Makes sure you use at least Python 2.7.9 to avoid running into it.