diff --git a/.mailmap b/.mailmap index e579957fdc..bdab0fd8fc 100644 --- a/.mailmap +++ b/.mailmap @@ -112,3 +112,6 @@ Zheng Yao Paul Dardeau Cheng Li Nandini Tata +Flavio Percoco +Donagh McCabe +Tin Lam diff --git a/AUTHORS b/AUTHORS index 4bdf7bbf9c..26f8bffd6c 100644 --- a/AUTHORS +++ b/AUTHORS @@ -61,6 +61,7 @@ Brian Reitz (brian.reitz@oracle.com) Bryan Keller (kellerbr@us.ibm.com) Béla Vancsics (vancsics@inf.u-szeged.hu) Caleb Tennis (caleb.tennis@gmail.com) +Cao Xuan Hoang (hoangcx@vn.fujitsu.com) Carlos Cavanna (ccavanna@ca.ibm.com) Catherine Northcott (catherine@northcott.nz) Cedric Dos Santos (cedric.dos.sant@gmail.com) @@ -112,6 +113,7 @@ Doron Chen (cdoron@il.ibm.com) Doug Hellmann (doug.hellmann@dreamhost.com) Doug Weimer (dweimer@gmail.com) Dragos Manolescu (dragosm@hp.com) +Drew Balfour (andrew.balfour@oracle.com) Eamonn O'Toole (eamonn.otoole@hpe.com) Ed Leafe (ed.leafe@rackspace.com) Edward Hope-Morley (opentastic@gmail.com) @@ -128,7 +130,7 @@ Falk Reimann (falk.reimann@sap.com) Felipe Reyes (freyes@tty.cl) Ferenc Horváth (hferenc@inf.u-szeged.hu) Filippo Giunchedi (fgiunchedi@wikimedia.org) -Flaper Fesp (flaper87@gmail.com) +Flavio Percoco (flaper87@gmail.com) Florent Flament (florent.flament-ext@cloudwatt.com) François Charlier (francois.charlier@enovance.com) Fujita Tomonori (fujita.tomonori@lab.ntt.co.jp) @@ -256,6 +258,7 @@ Paul Dardeau (paul.dardeau@intel.com) Paul Jimenez (pj@place.org) Paul Luse (paul.e.luse@intel.com) Paul McMillan (paul.mcmillan@nebula.com) +Pavel Kvasnička (pavel.kvasnicka@firma.seznam.cz) Pawel Palucki (pawel.palucki@gmail.com) Pearl Yajing Tan (pearl.y.tan@seagate.com) Pete Zaitcev (zaitcev@kotori.zaitcev.us) @@ -300,11 +303,12 @@ TheSriram (sriram@klusterkloud.com) Thiago da Silva (thiago@redhat.com) Thierry Carrez (thierry@openstack.org) Thomas Goirand (thomas@goirand.fr) +Thomas Herve (therve@redhat.com) Thomas Leaman (thomas.leaman@hp.com) Tim Burke (tim.burke@gmail.com) Timothy Okwii (tokwii@cisco.com) Timur Alperovich (timur.alperovich@gmail.com) -Tin Lam (tl3438@att.com) +Tin Lam (tinlam@gmail.com) Tobias Stevenson (tstevenson@vbridges.com) Tom Fifield (tom@openstack.org) Tomas Matlocha (tomas.matlocha@firma.seznam.cz) diff --git a/CHANGELOG b/CHANGELOG index 169b79cfd5..2438ec8ab4 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,63 @@ +swift (2.12.0) + + * Ring files now include byteorder information about the endian of + the machine used to generate the file, and the values are + appropriately byteswapped if deserialized on a machine with a + different endianness. + + Newly created ring files will be byteorder agnostic, but + previously generated ring files will still fail on different + endian architectures. Regenerating older ring files will cause + them to become byteorder agnostic. The regeneration of the ring + files will not cause any new data movement. Newer ring files + will still be usable by older versions of Swift (on machines + with the same endianness--this maintains existing behavior). + + * All 416 responses will now include a Content-Range header with + an unsatisfied-range value. This allows the caller to know the + valid range request value for an object. + + * TempURLs now support a validation against a common prefix. A + prefix-based signature grants access to all objects which share the + same prefix. This avoids the creation of a large amount of signatures, + when a whole container or pseudofolder is shared. + + * Correctly handle deleted files with if-none-match requests. + + * Correctly send 412 Precondition Failed if a user sends an + invalid copy destination. Previously Swift would send a 500 + Internal Server Error. + + * In SLO manifests, the `etag` and `size_bytes` keys are now fully + optional and not required. Previously, the keys needed to exist + but the values were optional. The only required key is `path`. + + * Fixed a rare infinite loop in `swift-ring-builder` while placing parts. + + * Ensure update of the container by object-updater, removing a rare + possibility that objects would never be added to a container listing. + + * Fixed non-deterministic suffix updates in hashes.pkl where a partition + may be updated much less often than expected. + + * Fixed regression in consolidate_hashes that occurred when a new + file was stored to new suffix to a non-empty partition. This bug + was introduced in 2.7.0 and could cause an increase in rsync + replication stats during and after upgrade, due to inconsistent + hashing of partition suffixes. + + * Account and container databases will now be quarantined if the + database schema has been corrupted. + + * Removed "in-process-" from func env tox name to work with + upstream CI. + + * Respect server type for --md5 check in swift-recon. + + * Remove empty db hash and suffix directories if a db gets quarantined. + + * Various other minor bug fixes and improvements. + swift (2.11.0) * We have made significant improvements and changes to the erasure diff --git a/releasenotes/notes/2_12_0_release-06af226abc7b91ef.yaml b/releasenotes/notes/2_12_0_release-06af226abc7b91ef.yaml new file mode 100644 index 0000000000..0246fe5f3a --- /dev/null +++ b/releasenotes/notes/2_12_0_release-06af226abc7b91ef.yaml @@ -0,0 +1,57 @@ +--- +features: + - > + Ring files now include byteorder information about the endian of + the machine used to generate the file, and the values are + appropriately byteswapped if deserialized on a machine with a + different endianness. + + Newly created ring files will be byteorder agnostic, but + previously generated ring files will still fail on different + endian architectures. Regenerating older ring files will cause + them to become byteorder agnostic. The regeneration of the ring + files will not cause any new data movement. Newer ring files + will still be usable by older versions of Swift (on machines + with the same endianness--this maintains existing behavior). + - > + All 416 responses will now include a Content-Range header with + an unsatisfied-range value. This allows the caller to know the + valid range request value for an object. + - > + TempURLs now support a validation against a common prefix. A + prefix-based signature grants access to all objects which share the + same prefix. This avoids the creation of a large amount of signatures, + when a whole container or pseudofolder is shared. + - > + In SLO manifests, the `etag` and `size_bytes` keys are now fully + optional and not required. Previously, the keys needed to exist + but the values were optional. The only required key is `path`. + - Respect server type for --md5 check in swift-recon. +fixes: + - Correctly handle deleted files with if-none-match requests. + - > + Correctly send 412 Precondition Failed if a user sends an + invalid copy destination. Previously Swift would send a 500 + Internal Server Error. + - Fixed a rare infinite loop in `swift-ring-builder` while placing parts. + - > + Ensure update of the container by object-updater, removing a rare + possibility that objects would never be added to a container listing. + - > + Fixed non-deterministic suffix updates in hashes.pkl where a partition + may be updated much less often than expected. + - > + Fixed regression in consolidate_hashes that occurred when a new + file was stored to new suffix to a non-empty partition. This bug + was introduced in 2.7.0 and could cause an increase in rsync + replication stats during and after upgrade, due to inconsistent + hashing of partition suffixes. + - > + Account and container databases will now be quarantined if the + database schema has been corrupted. + - Remove empty db hash and suffix directories if a db gets quarantined. +other: + - > + Removed "in-process-" from func env tox name to work with + upstream CI. + - Various other minor bug fixes and improvements.