diff --git a/.mailmap b/.mailmap index 537c75be78..fdfca27ab5 100644 --- a/.mailmap +++ b/.mailmap @@ -127,3 +127,6 @@ zhangdebo1987 zhangdebo Thomas Goirand Thiago da Silva Kota Tsuyuzaki +Ehud Kaldor +Takashi Kajinami +Yuxin Wang Wang Yuxin diff --git a/AUTHORS b/AUTHORS index 4c7f6a49b8..4bd23dce97 100644 --- a/AUTHORS +++ b/AUTHORS @@ -143,7 +143,7 @@ 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) -Ehud Kaldor (ehud@UnfairFunction.org) +Ehud Kaldor (ehud@unfairfunction.org) Ellen Leahy (ellen.mar.leahy@hpe.com) Emett Speer (speer.emett@gmail.com) Emile Snyder (emile.snyder@gmail.com) @@ -174,6 +174,7 @@ gengchc2 (geng.changcai2@zte.com.cn) Gerard Gine (ggine@swiftstack.com) Gerry Drudy (gerry.drudy@hpe.com) Gil Vernik (gilv@il.ibm.com) +Gilles Biannic (gilles.biannic@corp.ovh.com) Gleb Samsonov (sams-gleb@yandex.ru) Gonéri Le Bouder (goneri.lebouder@enovance.com) Graham Hayes (graham.hayes@hpe.com) @@ -216,6 +217,7 @@ Jing Liuqing (jing.liuqing@99cloud.net) Joanna H. Huang (joanna.huitzu.huang@gmail.com) Joe Arnold (joe@swiftstack.com) Joe Gordon (jogo@cloudscaling.com) +Joe Yang (jyang@swiftstack.com) Joel Wright (joel.wright@sohonet.com) John Leach (john@johnleach.co.uk) Jola Mirecka (jola.mirecka@hp.com) @@ -238,6 +240,7 @@ Kiyoung Jung (kiyoung.jung@kt.com) Koert van der Veer (koert@cloudvps.com) Kota Tsuyuzaki (kota.tsuyuzaki.pc@hco.ntt.co.jp) Ksenia Demina (kdemina@mirantis.com) +Kuan-Lin Chen (kuanlinchen@synology.com) Kun Huang (gareth@unitedstack.com) Larry Rensing (lr699s@att.com) Leah Klearman (lklrmn@gmail.com) @@ -259,6 +262,7 @@ M V P Nitesh (m.nitesh@nectechnologies.in) Madhuri Kumari (madhuri.rai07@gmail.com) Mahati Chamarthy (mahati.chamarthy@gmail.com) malei (malei@maleideMacBook-Pro.local) +Mandell Degerness (mdegerness@swiftstack.com) maoshuai (fwsakura@163.com) Marcelo Martins (btorch@gmail.com) Maria Malyarova (savoreux69@gmail.com) @@ -348,6 +352,7 @@ Sarvesh Ranjan (saranjan@cisco.com) Sascha Peilicke (saschpe@gmx.de) Saverio Proto (saverio.proto@switch.ch) Scott Simpson (sasimpson@gmail.com) +Sean McGinnis (sean.mcginnis@gmail.com) Sergey Kraynev (skraynev@mirantis.com) Sergey Lukjanov (slukjanov@mirantis.com) Shane Wang (shane.wang@intel.com) @@ -357,6 +362,7 @@ Shashank Kumar Shankar (shashank.kumar.shankar@intel.com) Shashirekha Gundur (shashirekha.j.gundur@intel.com) Shilla Saebi (shilla.saebi@gmail.com) Shri Javadekar (shrinand@maginatics.com) +Simeon Gourlin (simeon.gourlin@infomaniak.com) Sivasathurappan Radhakrishnan (siva.radhakrishnan@intel.com) Soren Hansen (soren@linux2go.dk) Stefan Majewsky (stefan.majewsky@sap.com) @@ -365,7 +371,7 @@ Steve Kowalik (steven@wedontsleep.org) Steve Martinelli (stevemar@ca.ibm.com) Steven Lang (Steven.Lang@hgst.com) Sushil Kumar (sushil.kumar2@globallogic.com) -Takashi Kajinami (kajinamit@nttdata.co.jp) +Takashi Kajinami (tkajinam@redhat.com) Takashi Natsume (natsume.takashi@lab.ntt.co.jp) TheSriram (sriram@klusterkloud.com) Thiago da Silva (thiagodasilva@gmail.com) @@ -420,6 +426,7 @@ Yushiro FURUKAWA (y.furukawa_2@jp.fujitsu.com) Yuxin Wang (wang.yuxin@ostorage.com.cn) Zack M. Davis (zdavis@swiftstack.com) Zap Chang (zapchang@gmail.com) +zengjia (zengjia@awcloud.com) Zhang Guoqing (zhang.guoqing@99cloud.net) Zhang Jinnan (ben.os@99cloud.net) zhang.lei (zhang.lei@99cloud.net) @@ -432,6 +439,8 @@ Zhenguo Niu (zhenguo@unitedstack.com) zhengwei6082 (zhengwei6082@fiberhome.com) ZhijunWei (wzj334965317@outlook.com) ZhiQiang Fan (aji.zqfan@gmail.com) +ZhongShengping (chdzsp@163.com) Zhongyue Luo (zhongyue.nah@intel.com) zhufl (zhu.fanglei@zte.com.cn) zhulingjie (easyzlj@gmail.com) +翟小君 (zhaixiaojun@gohighsec.com) diff --git a/CHANGELOG b/CHANGELOG index 8f2ebc87ac..7a3144ca30 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,78 @@ +swift (2.22.0) + + * Experimental support for Python 3.6 and 3.7 is now available. + Note that this requires eventlet>=0.25.0. All unit tests pass, + and running functional tests under Python 2 will pass against + services running under Python 3. Expect full support in the + next minor release. + + * Log formats are now more configurable and include support for + anonymization. See the log_msg_template option in proxy-server.conf + and https://docs.openstack.org/swift/latest/logs.html#proxy-logs + for more information. + + * Added an operator tool, swift-container-deleter, to asynchronously + delete some or all objects in a container using the object expirers. + + * Swift-all-in-one Docker images are now built and published to + https://hub.docker.com/r/openstackswift/saio. These are intended + for use as development targets, but will hopefully be useful as a + starting point for other work involving containerizing Swift. + + * The object-expirer may now be configured in object-server.conf. + This is in anticipation of a future change to allow the + object-expirer to be deployed on all nodes that run object-servers. + + * Correctness improvements + + * The proxy-server now ignores 404 responses from handoffs without + databases when deciding on the correct response for account and + container requests. + + * Object writes to a container whose existence cannot be verified + now 503 instead of 404. + + * Sharding improvements + + * The container-replicator now only attempts to fetch shard ranges if + the remote indicates that it has shard ranges. Further, it does so + with a timeout to prevent the process from hanging in certain cases. + + * The proxy-server now caches 'updating' shards, improving write + performance for sharded containers. A new config option, + `recheck_updating_shard_ranges`, controls the cache time; set it to + 0 to disable caching. + + * The container-replicator now correctly enqueues container-reconciler + work for sharded containers. + + * S3 API improvements + + * Unsigned payloads work with v4 signatures once more. + + * Multipart upload parts may now be copied from other multipart uploads. + + * CompleteMultipartUpload requests with a Content-MD5 now work. + + * Content-Type can now be updated when copying an object. + + * Fixed v1 listings that end with a non-ASCII object name. + + * Background corruption-detection improvements + + * Detect and remove invalid entries from hashes.pkl + + * When object path is not a directory, just quarantine it, + rather than the whole suffix. + + * Dependency updates: we've increased our minimum supported version + of cryptography to 2.0.2 and netifaces to 0.8. This is largely due + to the difficulty of continuing to test with the old versions. + + If running Swift under Python 3, eventlet must be at least 0.25.0. + + * Various other minor bug fixes and improvements. + swift (2.21.0, OpenStack Stein release) * Change the behavior of the EC reconstructor to perform a diff --git a/releasenotes/notes/2_22_0_release-f60d29508b3c1283.yaml b/releasenotes/notes/2_22_0_release-f60d29508b3c1283.yaml new file mode 100644 index 0000000000..1e6ea3b1e4 --- /dev/null +++ b/releasenotes/notes/2_22_0_release-f60d29508b3c1283.yaml @@ -0,0 +1,87 @@ +--- +features: + - | + Experimental support for Python 3.6 and 3.7 is now available. + Note that this requires ``eventlet>=0.25.0``. All unit tests pass, + and running functional tests under Python 2 will pass against + services running under Python 3. Expect full support in the + next minor release. + + - | + Log formats are now more configurable and include support for + anonymization. See the ``log_msg_template`` option in ``proxy-server.conf`` + and `the Swift documentation `__ + for more information. + + - | + Added an operator tool, ``swift-container-deleter``, to asynchronously + delete some or all objects in a container using the object expirers. + + - | + Swift-all-in-one Docker images are now built and published to + https://hub.docker.com/r/openstackswift/saio. These are intended + for use as development targets, but will hopefully be useful as a + starting point for other work involving containerizing Swift. + +upgrade: + - | + The ``object-expirer`` may now be configured in ``object-server.conf``. + This is in anticipation of a future change to allow the ``object-expirer`` + to be deployed on all nodes that run the ``object-server``. + + - | + **Dependency updates**: we've increased our minimum supported version + of ``cryptography`` to 2.0.2 and ``netifaces`` to 0.8. This is largely due + to the difficulty of continuing to test with the old versions. + + If running Swift under Python 3, ``eventlet`` must be at least 0.25.0. + +fixes: + - | + Correctness improvements + + * The ``proxy-server`` now ignores 404 responses from handoffs without + databases when deciding on the correct response for account and + container requests. + + * Object writes to a container whose existence cannot be verified + now 503 instead of 404. + + - | + Sharding improvements + + * The ``container-replicator`` now only attempts to fetch shard ranges if + the remote indicates that it has shard ranges. Further, it does so + with a timeout to prevent the process from hanging in certain cases. + + * The ``proxy-server`` now caches 'updating' shards, improving write + performance for sharded containers. A new config option, + ``recheck_updating_shard_ranges``, controls the cache time; set it to + 0 to disable caching. + + * The ``container-replicator`` now correctly enqueues + ``container-reconciler`` work for sharded containers. + + - | + S3 API improvements + + * Unsigned payloads work with v4 signatures once more. + + * Multipart upload parts may now be copied from other multipart uploads. + + * CompleteMultipartUpload requests with a ``Content-MD5`` now work. + + * ``Content-Type`` can now be updated when copying an object. + + * Fixed v1 listings that end with a non-ASCII object name. + + - | + Background corruption-detection improvements + + * Detect and remove invalid entries from ``hashes.pkl`` + + * When object path is not a directory, just quarantine it, + rather than the whole suffix. + + - | + Various other minor bug fixes and improvements.