We are frolicsome to announce the release of:
swift 2.10.1: OpenStack Object Storage
This release is part of the newton stable release series.
Download the package from:
https://tarballs.openstack.org/swift/
For more details, please see below.
2.10.1 ^^^^^^
Bug Fixes
* Closed a bug where ssync may have written bad fragment data in some circumstances. A check was added to ensure the correct number of bytes is written for a fragment before finalizing the write. Also, erasure coded fragment metadata will now be validated when read and, if bad data is found, the fragment will be quarantined.
* Fixed regression in consolidate_hashes that occured 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.
* Fixed non-deterministic suffix updates in hashes.pkl where a partition may be updated much less often than expected.
* Fixed a rare infinite loop in *swift-ring-builder* while placing parts.
* Fixed the KeyError message when auditor finds an expired object.
* Added a "user" option to the drive-audit config file. Its value is used to set the owner of the drive-audit recon cache.
* Throttle update_auditor_status calls so it updates no more than once per minute. This prevents excessive IO on a new cluster.
* Daemons using InternalClient can now be properly killed with SIGTERM.
* Added a configurable URL base to staticweb, fixing issues when the accessible endpoint isn't known to the Swift cluster (eg http vs https).
* Removed "in-process-" from func env tox name to work with upstream CI.
Changes in swift 2.10.0..2.10.1 -------------------------------
3129a55 2.10.1 authors/changelog updates bb3e4ad Fix non-deterministic suffix updates in hashes.pkl 63911e8 Fixed regression in consolidate_hashes 84a2a36 Imported Translations from Zanata aef8112 Removed "in-process-" from func env tox name a419b39 Avoid infinite loop while placing parts 1f07ccb Fix signal handling for daemons with InternalClient 0dc3fd6 Set owner of drive-audit recon cache to swift user 4ecda96 Fix KeyError when auditor finds an expired object 07067aa Make ECDiskFileReader check fragment metadata ded306f Imported Translations from Zanata cff7754 Add a configurable URL base to staticweb 73ccc35 Prevent ssync writing bad fragment data to diskfile 5941f26 Throttle update_auditor_status calls 3349016 Update .gitreview for stable/newton
Diffstat (except docs and test files) -------------------------------------
.gitreview | 1 + .mailmap | 1 + AUTHORS | 2 +- CHANGELOG | 35 ++ bin/swift-drive-audit | 3 +- etc/drive-audit.conf-sample | 1 + etc/proxy-server.conf-sample | 12 + .../notes/2_10_1_release-99287f1dd66f6132.yaml | 39 ++ swift/common/daemon.py | 4 +- swift/common/middleware/staticweb.py | 37 +- swift/common/ring/builder.py | 6 +- swift/common/utils.py | 6 +- swift/locale/de/LC_MESSAGES/swift.po | 8 +- swift/locale/es/LC_MESSAGES/swift.po | 16 +- swift/locale/fr/LC_MESSAGES/swift.po | 8 +- swift/locale/it/LC_MESSAGES/swift.po | 8 +- swift/locale/ja/LC_MESSAGES/swift.po | 8 +- swift/locale/ko_KR/LC_MESSAGES/swift.po | 218 ++++++++- swift/locale/pt_BR/LC_MESSAGES/swift.po | 8 +- swift/locale/ru/LC_MESSAGES/swift.po | 8 +- swift/locale/tr_TR/LC_MESSAGES/swift.po | 8 +- swift/locale/zh_CN/LC_MESSAGES/swift.po | 8 +- swift/locale/zh_TW/LC_MESSAGES/swift.po | 8 +- swift/obj/auditor.py | 4 +- swift/obj/diskfile.py | 107 ++++- swift/obj/reconstructor.py | 3 +- swift/obj/replicator.py | 10 +- swift/obj/ssync_receiver.py | 13 +- swift/obj/ssync_sender.py | 20 +- test/probe/test_signals.py | 155 +++++++ test/probe/test_wsgi_servers.py | 105 ----- test/unit/__init__.py | 29 ++ test/unit/common/middleware/test_staticweb.py | 53 +++ test/unit/common/ring/test_builder.py | 34 +- test/unit/common/test_daemon.py | 31 +- test/unit/common/test_utils.py | 22 + test/unit/obj/common.py | 50 +- test/unit/obj/test_auditor.py | 109 ++++- test/unit/obj/test_diskfile.py | 509 +++++++++++++++++---- test/unit/obj/test_reconstructor.py | 3 +- test/unit/obj/test_replicator.py | 60 ++- test/unit/obj/test_server.py | 122 ++++- test/unit/obj/test_ssync.py | 393 ++++++++++++++-- test/unit/obj/test_ssync_receiver.py | 52 ++- test/unit/obj/test_ssync_sender.py | 9 +- test/unit/proxy/controllers/test_obj.py | 20 +- tox.ini | 4 +- 48 files changed, 1941 insertions(+), 431 deletions(-)