summaryrefslogtreecommitdiff
path: root/CHANGELOG
diff options
context:
space:
mode:
authorJohn Dickinson <me@not.mn>2016-03-21 22:03:34 -0700
committerJohn Dickinson <me@not.mn>2016-03-23 15:26:41 -0700
commit5d00ce9e3a1f5e32ae91c78b6bdfd953658ab984 (patch)
tree9a9f743301e5b496f9ee59ca683f4859d3317284 /CHANGELOG
parent4be37018051df99eb034e6f5ce163345b1370c01 (diff)
downloadswift-5d00ce9e3a1f5e32ae91c78b6bdfd953658ab984.tar.gz
2.7.0 authors and changelog updates
Change-Id: I16ad0c61b048921ca01fa96862ae7eea0eec6017
Diffstat (limited to 'CHANGELOG')
-rw-r--r--CHANGELOG148
1 files changed, 148 insertions, 0 deletions
diff --git a/CHANGELOG b/CHANGELOG
index c1b335d54..799382b38 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,151 @@
+swift (2.7.0, OpenStack Mitaka)
+
+ * Bump PyECLib requirement to >= 1.2.0
+
+ * Update container on fast-POST
+
+ "Fast-POST" is the mode where `object_post_as_copy` is set to
+ `False` in the proxy server config. This mode now allows for
+ fast, efficient updates of metadata without needing to fully
+ recopy the contents of the object. While the default still is
+ `object_post_as_copy` as True, the plan is to change the default
+ to False and then deprecate post-as-copy functionality in later
+ releases. Fast-POST now supports container-sync functionality.
+
+ * Add concurrent reads option to proxy.
+
+ This change adds 2 new parameters to enable and control concurrent
+ GETs in Swift, these are `concurrent_gets` and `concurrency_timeout`.
+
+ `concurrent_gets` allows you to turn on or off concurrent
+ GETs; when on, it will set the GET/HEAD concurrency to the
+ replica count. And in the case of EC HEADs it will set it to
+ ndata. The proxy will then serve only the first valid source to
+ respond. This applies to all account, container, and replicated
+ object GETs and HEADs. For EC only HEAD requests are affected.
+ The default for `concurrent_gets` is off.
+
+ `concurrency_timeout` is related to `concurrent_gets` and is
+ the amount of time to wait before firing the next thread. A
+ value of 0 will fire at the same time (fully concurrent), but
+ setting another value will stagger the firing allowing you the
+ ability to give a node a short chance to respond before firing
+ the next. This value is a float and should be somewhere between
+ 0 and `node_timeout`. The default is `conn_timeout`, meaning by
+ default it will stagger the firing.
+
+ * Added an operational procedures guide to the docs. It can be
+ found at http://swift.openstack.org/ops_runbook/index.html and
+ includes information on detecting and handling day-to-day
+ operational issues in a Swift cluster.
+
+ * Make `handoffs_first` a more useful mode for the object replicator.
+
+ The `handoffs_first` replication mode is used during periods of
+ problematic cluster behavior (e.g. full disks) when replication
+ needs to quickly drain partitions from a handoff node and move
+ them to a primary node.
+
+ Previously, `handoffs_first` would sort that handoff work before
+ "normal" replication jobs, but the normal replication work could
+ take quite some time and result in handoffs not being drained
+ quickly enough.
+
+ In order to focus on getting handoff partitions off the node
+ `handoffs_first` mode will now abort the current replication
+ sweep before attempting any primary suffix syncing if any of the
+ handoff partitions were not removed for any reason - and start
+ over with replication of handoffs jobs as the highest priority.
+
+ Note that `handoffs_first` being enabled will emit a warning on
+ start up, even if no handoff jobs fail, because of the negative
+ impact it can have during normal operations by dog-piling on a
+ node that was temporarily unavailable.
+
+ * By default, inbound `X-Timestamp` headers are now disallowed
+ (except when in an authorized container-sync request). This
+ header is useful for allowing data migration from other storage
+ systems to Swift and keeping the original timestamp of the data.
+ If you have this migration use case (or any other requirement on
+ allowing the clients to set an object's timestamp), set the
+ `shunt_inbound_x_timestamp` config variable to False in the
+ gatekeeper middleware config section of the proxy server config.
+
+ * Requesting a SLO manifest file with the query parameters
+ "?multipart-manifest=get&format=raw" will return the contents of
+ the manifest in the format as was originally sent by the client.
+ The "format=raw" is new.
+
+ * Static web page listings can now be rendered with a custom
+ label. By default listings are rendered with a label of:
+ "Listing of /v1/<account>/<container>/<path>". This change adds
+ a new custom metadata key/value pair
+ `X-Container-Meta-Web-Listings-Label: My Label` that when set,
+ will cause the following: "Listing of My Label/<path>" to be
+ rendered instead.
+
+ * Previously, static large objects (SLOs) had a minimum segment
+ size (default to 1MiB). This limit has been removed, but small
+ segments will be ratelimited. The config parameter
+ `rate_limit_under_size` controls the definition of "small"
+ segments (1MiB by default), and `rate_limit_segments_per_sec`
+ controls how many segments per second can be served (default is 1).
+ With the default values, the effective behavior is identical to the
+ previous behavior when serving SLOs.
+
+ * Container sync has been improved to perform a HEAD on the remote
+ side of the sync for each object being synced. If the object
+ exists on the remote side, container-sync will no longer
+ transfer the object, thus significantly lowering the network
+ requirements to use the feature.
+
+ * The object auditor will now clean up any old, stale rsync temp
+ files that it finds. These rsync temp files are left if the
+ rsync process fails without completing a full transfer of an
+ object. Since these files can be large, the temp files may end
+ up filling a disk. The new auditor functionality will reap these
+ rsync temp files if they are old. The new object-auditor config
+ variable `rsync_tempfile_timeout` is the number of seconds old a
+ tempfile must be before it is reaped. By default, this variable
+ is set to "auto" or the rsync_timeout plus 900 seconds (falling
+ back to a value of 1 day).
+
+ * The Erasure Code reconstruction process has been made more
+ efficient by not syncing data files when only the durable commit
+ file is missing.
+
+ * Fixed a bug where 304 and 416 response may not have the right
+ Etag and Accept-Ranges headers when the object is stored in an
+ Erasure Coded policy.
+
+ * Versioned writes now correctly stores the date of previous versions
+ using GMT instead of local time.
+
+ * The deprecated Keystone middleware option is_admin has been removed.
+
+ * Fixed log format in object auditor.
+
+ * The zero-byte mode (ZBF) of the object auditor will now properly
+ observe the `--once` option.
+
+ * Swift keeps track, internally, of "dirty" parts of the partition
+ keyspace with a "hashes.pkl" file. Operations on this file no
+ longer require a read-modify-write cycle and use a new
+ "hashes.invalid" file to track dirty partitions. This change
+ will improve end-user performance for PUT and DELETE operations.
+
+ * The object replicator's succeeded and failed counts are now logged.
+
+ * `swift-recon` can now query hosts by storage policy.
+
+ * The log_statsd_host value can now be an IPv6 address or a hostname
+ which only resolves to an IPv6 address.
+
+ * Erasure coded fragments now properly call fallocate to reserve disk
+ space before being written.
+
+ * Various other minor bug fixes and improvements.
+
swift (2.6.0)
* Dependency changes