summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.mailmap6
-rw-r--r--AUTHORS8
-rw-r--r--CHANGELOG86
-rw-r--r--releasenotes/notes/2_13_0_release-875e1fb1ef59f015.yaml83
4 files changed, 181 insertions, 2 deletions
diff --git a/.mailmap b/.mailmap
index becc2207a..718565fb2 100644
--- a/.mailmap
+++ b/.mailmap
@@ -83,7 +83,8 @@ Atsushi Sakai <sakaia@jp.fujitsu.com>
Takashi Natsume <natsume.takashi@lab.ntt.co.jp>
Nakagawa Masaaki <nakagawamsa@nttdata.co.jp> nakagawamsa
Romain Le Disez <romain.ledisez@ovh.net> Romain LE DISEZ
-Donagh McCabe <donagh.mccabe@hpe.com> <donagh.mccabe@hp.com> <donagh.mccabe@gmail.com>
+Donagh McCabe <donagh.mccabe@gmail.com> <donagh.mccabe@hpe.com>
+Donagh McCabe <donagh.mccabe@gmail.com> <donagh.mccabe@hp.com>
Eamonn O'Toole <eamonn.otoole@hpe.com> <eamonn.otoole@hp.com>
Gerry Drudy <gerry.drudy@hpe.com> <gerry.drudy@hp.com>
Mark Seger <mark.seger@hpe.com> <mark.seger@hp.com>
@@ -114,4 +115,5 @@ Cheng Li <shcli@cn.ibm.com>
Nandini Tata <nandini.tata@intel.com> <nandini.tata.15@gmail.com>
Flavio Percoco <flaper87@gmail.com>
Tin Lam <tinlam@gmail.com> <tl3438@att.com>
-Hisashi Osanai <osanai.hisashi@jp.fujitsu.com> <osanai.hisashi@gmail.com>
+Hisashi Osanai <osanai.hisashi@gmail.com> <osanai.hisashi@jp.fujitsu.com>
+Bryan Keller <kellerbr@us.ibm.com>
diff --git a/AUTHORS b/AUTHORS
index 637021b07..809077082 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -72,6 +72,7 @@ ChangBo Guo(gcb) (eric.guo@easystack.cn)
Chaozhe Chen (chaozhe.chen@easystack.cn)
Charles Hsu (charles0126@gmail.com)
Cheng Li (shcli@cn.ibm.com)
+Chmouel Boudjnah (chmouel@enovance.com)
Chris Wedgwood (cw@f00f.org)
Christian Berendt (berendt@b1-systems.de)
Christian Hugo (hugo.christian@web.de)
@@ -110,6 +111,7 @@ Dirk Mueller (dirk@dmllr.de)
Dmitriy Ukhlov (dukhlov@mirantis.com)
Dmitry Ukov (dukov@mirantis.com)
Dolph Mathews (dolph.mathews@gmail.com)
+Donagh McCabe (donagh.mccabe@gmail.com)
Doron Chen (cdoron@il.ibm.com)
Doug Hellmann (doug.hellmann@dreamhost.com)
Doug Weimer (dweimer@gmail.com)
@@ -133,6 +135,7 @@ Ferenc Horváth (hferenc@inf.u-szeged.hu)
Filippo Giunchedi (fgiunchedi@wikimedia.org)
Flavio Percoco (flaper87@gmail.com)
Florent Flament (florent.flament-ext@cloudwatt.com)
+Florian Hines (syn@ronin.io)
François Charlier (francois.charlier@enovance.com)
Fujita Tomonori (fujita.tomonori@lab.ntt.co.jp)
Félix Cantournet (felix.cantournet@cloudwatt.com)
@@ -154,6 +157,7 @@ Hanxi Liu (hanxi.liu@easystack.cn)
Harshada Mangesh Kakad (harshadak@metsi.co.uk)
Harshit Chitalia (harshit@acelio.com)
hgangwx (hgangwx@cn.ibm.com)
+Hisashi Osanai (osanai.hisashi@gmail.com)
Hodong Hwang (hodong.hwang@kt.com)
Hou Ming Wang (houming.wang@easystack.cn)
houweichao (houwch@gohighsec.com)
@@ -263,6 +267,7 @@ Pawel Palucki (pawel.palucki@gmail.com)
Pearl Yajing Tan (pearl.y.tan@seagate.com)
Pete Zaitcev (zaitcev@kotori.zaitcev.us)
Peter Lisak (peter.lisak@firma.seznam.cz)
+Peter Portante (peter.portante@redhat.com)
Petr Kovar (pkovar@redhat.com)
Pradeep Kumar Singh (pradeep.singh@nectechnologies.in)
Prashanth Pai (ppai@redhat.com)
@@ -277,6 +282,7 @@ Richard Hawkins (richard.hawkins@rackspace.com)
Romain Le Disez (romain.ledisez@ovh.net)
Russ Nelson (russ@crynwr.com)
Russell Bryant (rbryant@redhat.com)
+Sachin Patil (psachin@redhat.com)
Samuel Merritt (sam@swiftstack.com)
Sarafraj Singh (Sarafraj.Singh@intel.com)
Sarvesh Ranjan (saranjan@cisco.com)
@@ -312,6 +318,7 @@ Tin Lam (tinlam@gmail.com)
Tobias Stevenson (tstevenson@vbridges.com)
Tom Fifield (tom@openstack.org)
Tomas Matlocha (tomas.matlocha@firma.seznam.cz)
+tone-zhang (tone.zhang@linaro.org)
Tong Li (litong01@us.ibm.com)
Travis McPeak (tmcpeak@us.ibm.com)
Tushar Gohad (tushar.gohad@intel.com)
@@ -329,6 +336,7 @@ Ye Jia Xu (xyj.asmy@gmail.com)
Yee (mail.zhang.yee@gmail.com)
Yu Yafei (yu.yafei@zte.com.cn)
Yuan Zhou (yuan.zhou@intel.com)
+yuhui_inspur (yuhui@inspur.com)
Yummy Bian (yummy.bian@gmail.com)
Yuriy Taraday (yorik.sar@gmail.com)
Yushiro FURUKAWA (y.furukawa_2@jp.fujitsu.com)
diff --git a/CHANGELOG b/CHANGELOG
index 2438ec8ab..6b7f2e0d2 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,89 @@
+swift (2.13.0, OpenStack Ocata)
+
+ * Improvements in key parts of the consistency engine
+
+ - Improved performance by eliminating an unneeded directory
+ structure hash.
+
+ - Optimized the common case for hashing filesystem trees, thus
+ eliminating a lot of extraneous disk I/O.
+
+ - Updated the `hashes.pkl` file format to include timestamp information
+ for race detection. Also simplified hashing logic to prevent race
+ conditions and optimize for the common case.
+
+ - The erasure code reconstructor will now shuffle work jobs across all
+ disks instead of going disk-by-disk. This eliminates single-disk I/O
+ contention and allows continued scaling as concurrency is increased.
+
+ - Erasure code reconstruction handles moving data from handoff nodes
+ better. Instead of moving the data to another handoff, it waits
+ until it can be moved to a primary node.
+
+ Upgrade Impact: If you upgrade and roll back, you must delete all
+ `hashes.pkl` files.
+
+ * If using erasure coding with ISA-L in rs_vand mode and 5 or more parity
+ fragments, Swift will emit a warning. This is a configuration that is
+ known to harm data durability. In a future release, this warning will be
+ upgraded to an error unless the policy is marked as deprecated. All data
+ in an erasure code storage policy using isa_l_rs_vand with 5 or more
+ parity should be migrated as soon as possible. Please see
+ https://bugs.launchpad.net/swift/+bug/1639691 for more information.
+
+ * The erasure code reconstructor `handoffs_first` option has been
+ deprecated in favor of `handoffs_only`. `handoffs_only` is far more
+ useful, and just like `handoffs_first` mode in the replicator, it gives
+ the operator the option of forcing the consistency engine to focus
+ solely on revert (handoff) jobs, thus improving the speed of
+ rebalances. The `handoffs_only` behavior is somewhat consistent with
+ the replicator's `handoffs_first` option (any error on any handoff in
+ the replicator will make it essentially handoff only forever) but the
+ `handoff_only` option does what you want and is named correctly in the
+ reconstructor.
+
+ * The default for `object_post_as_copy` has been changed to False. The
+ option is now deprecated and will be removed in a future release. If
+ your cluster is still running with post-as-copy enabled, please update
+ it to use the "fast-post" method. Future versions of Swift will not
+ support post-as-copy, and future features will not be supported under
+ post-as-copy. ("Fast-post" is where `object_post_as_copy` is false).
+
+ * Temporary URLs now support one common form of ISO 8601 timestamps in
+ addition to Unix seconds-since-epoch timestamps. The ISO 8601 format
+ accepted is '%Y-%m-%dT%H:%M:%SZ'. This makes TempURLs more
+ user-friendly to produce and consume.
+
+ * Listing containers in accounts with json or xml now includes a
+ `last_modified` time. This does not change any on-disk data, but simply
+ exposes the value to offer consistency with the object listings on
+ containers.
+
+ * Fixed a bug where the ring builder would not allow removal of a device
+ when min_part_seconds_left was greater than zero.
+
+ * PUT subrequests generated from a client-side COPY will now properly log
+ the SSC (server-side copy) Swift source field. See
+ https://docs.openstack.org/developer/swift/logs.html#swift-source for
+ more information.
+
+ * Fixed a bug where an SLO download with a range request may have resulted
+ in a 5xx series response.
+
+ * SLO manifest PUT requests can now be properly validated by sending an
+ ETag header of the md5 sum of the concatenated md5 sums of the
+ referenced segments.
+
+ * Fixed the stats calculation in the erasure code reconstructor.
+
+ * Rings with min_part_hours set to zero will now only move one partition
+ replica per rebalance, thus matching behavior when min_part_hours is
+ greater than zero.
+
+ * I/O priority is now supported on AArch64 architecture.
+
+ * Various other minor bug fixes and improvements.
+
swift (2.12.0)
* Ring files now include byteorder information about the endian of
diff --git a/releasenotes/notes/2_13_0_release-875e1fb1ef59f015.yaml b/releasenotes/notes/2_13_0_release-875e1fb1ef59f015.yaml
new file mode 100644
index 000000000..cd922910d
--- /dev/null
+++ b/releasenotes/notes/2_13_0_release-875e1fb1ef59f015.yaml
@@ -0,0 +1,83 @@
+---
+features:
+ - >
+ Improved performance by eliminating an unneeded directory
+ structure hash.
+ - >
+ Optimized the common case for hashing filesystem trees, thus
+ eliminating a lot of extraneous disk I/O.
+ - >
+ Updated the `hashes.pkl` file format to include timestamp information
+ for race detection. Also simplified hashing logic to prevent race
+ conditions and optimize for the common case.
+ - >
+ The erasure code reconstructor will now shuffle work jobs across all
+ disks instead of going disk-by-disk. This eliminates single-disk I/O
+ contention and allows continued scaling as concurrency is increased.
+ - >
+ Erasure code reconstruction handles moving data from handoff nodes
+ better. Instead of moving the data to another handoff, it waits
+ until it can be moved to a primary node.
+ - >
+ Temporary URLs now support one common form of ISO 8601 timestamps in
+ addition to Unix seconds-since-epoch timestamps. The ISO 8601 format
+ accepted is '%Y-%m-%dT%H:%M:%SZ'. This makes TempURLs more
+ user-friendly to produce and consume.
+ - >
+ Listing containers in accounts with json or xml now includes a
+ `last_modified` time. This does not change any on-disk data, but simply
+ exposes the value to offer consistency with the object listings on
+ containers.
+ - I/O priority is now supported on AArch64 architecture.
+upgrade:
+ - If you upgrade and roll back, you must delete all `hashes.pkl` files.
+deprecations:
+ - >
+ If using erasure coding with ISA-L in rs_vand mode and 5 or more parity
+ fragments, Swift will emit a warning. This is a configuration that is
+ known to harm data durability. In a future release, this warning will be
+ upgraded to an error unless the policy is marked as deprecated. All data
+ in an erasure code storage policy using isa_l_rs_vand with 5 or more
+ parity should be migrated as soon as possible. Please see
+ https://bugs.launchpad.net/swift/+bug/1639691 for more information.
+ - >
+ The erasure code reconstructor `handoffs_first` option has been
+ deprecated in favor of `handoffs_only`. `handoffs_only` is far more
+ useful, and just like `handoffs_first` mode in the replicator, it gives
+ the operator the option of forcing the consistency engine to focus
+ solely on revert (handoff) jobs, thus improving the speed of
+ rebalances. The `handoffs_only` behavior is somewhat consistent with
+ the replicator's `handoffs_first` option (any error on any handoff in
+ the replicator will make it essentially handoff only forever) but the
+ `handoff_only` option does what you want and is named correctly in the
+ reconstructor.
+ - >
+ The default for `object_post_as_copy` has been changed to False. The
+ option is now deprecated and will be removed in a future release. If
+ your cluster is still running with post-as-copy enabled, please update
+ it to use the "fast-post" method. Future versions of Swift will not
+ support post-as-copy, and future features will not be supported under
+ post-as-copy. ("Fast-post" is where `object_post_as_copy` is false).
+fixes:
+ - >
+ Fixed a bug where the ring builder would not allow removal of a device
+ when min_part_seconds_left was greater than zero.
+ - >
+ PUT subrequests generated from a client-side COPY will now properly log
+ the SSC (server-side copy) Swift source field. See
+ https://docs.openstack.org/developer/swift/logs.html#swift-source for
+ more information.
+ - >
+ Fixed a bug where an SLO download with a range request may have resulted
+ in a 5xx series response.
+ - >
+ SLO manifest PUT requests can now be properly validated by sending an
+ ETag header of the md5 sum of the concatenated md5 sums of the
+ referenced segments.
+ - Fixed the stats calculation in the erasure code reconstructor.
+ - >
+ Rings with min_part_hours set to zero will now only move one partition
+ replica per rebalance, thus matching behavior when min_part_hours is
+ greater than zero.
+other:
+ - Various other minor bug fixes and improvements.