[swift] swift 2.10.2 (newton)
We are thrilled to announce the release of: swift 2.10.2: 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.2 ^^^^^^ Bug Fixes * Improvements in key parts of the consistency engine - 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. 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. * 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. * 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. * Correctly send 412 Precondition Failed if a user sends an invalid copy destination. Previously Swift would send a 500 Internal Server Error. * Fixed error where a container drive error resulted in double space usage on rest drives. When drive with container or account database is unmounted, the bug would create handoff replicas on all remaining drives, increasing the drive space used and filling the cluster. * Account and container databases will now be quarantined if the database schema has been corrupted. * Ensure update of the container by object-updater, removing a rare possibility that objects would never be added to a container listing. * Fixed some minor test compatibility issues. * Updated docs to reference appropriate ports. Changes in swift 2.10.1..2.10.2 ------------------------------- f860faf changelog for 2.10.2 release d794179 Fix unit tests on i386 and other archs aad02ad Fix race when consolidating new partition fac6e09 Open-code eventlet.listen() a1f263c Better optimistic lock in get_hashes 80f550f Container drive error results double space usage on rest drives faa6890 Log the correct request type of a subrequest downstream of copy f59a737 Correctly send 412 Precondition Failed in copy middleware 41d90db Fix timing test error when rebalancing 735c99f More port number cleanup 5c7988b Ensure update of the container by object-updater a047516 Fix port ranges in install guide bd75a97 Warn about using EC with isa_l_rs_vand and nparity >= 5 054ee3d Fix race in new partitions detecting new/invalid suffixes. dd3a749 Simplify get_different_suffix_df args a4c1b3e Optimize noop case for suffix rehash de7348b Extract test pattern to helper 9c8c7e8 Rebalance with min_part_seconds_left > 0 e5dd050 For any part, only one replica can move in a rebalance ea1ecf3 Quarantine malformed database schema SQLite errors Diffstat (except docs and test files) ------------------------------------- CHANGELOG | 53 ++ .../samples/endpoints-list-response-headers.json | 14 +- .../source/samples/endpoints-list-response.json | 6 +- install-guide/source/initial-rings.rst | 84 +-- install-guide/source/storage-include1.txt | 2 +- install-guide/source/storage-include2.txt | 2 +- install-guide/source/storage-include3.txt | 2 +- .../notes/2_10_2_release-eb9abaa82fcc8ebc.yaml | 61 +++ swift/cli/ringbuilder.py | 17 +- swift/common/db.py | 2 + swift/common/db_replicator.py | 10 +- swift/common/middleware/copy.py | 36 +- swift/common/ring/builder.py | 36 +- swift/common/storage_policy.py | 22 + swift/common/wsgi.py | 3 +- swift/obj/diskfile.py | 157 +++--- swift/obj/updater.py | 12 +- test/__init__.py | 15 + test/functional/__init__.py | 16 +- test/probe/test_object_async_update.py | 61 +++ test/unit/cli/test_ringbuilder.py | 56 ++ test/unit/common/malformed_schema_example.db | Bin 0 -> 49152 bytes test/unit/common/middleware/test_account_quotas.py | 8 +- test/unit/common/middleware/test_copy.py | 75 ++- test/unit/common/middleware/test_quotas.py | 7 +- .../common/middleware/test_subrequest_logging.py | 178 ++++++ test/unit/common/ring/test_builder.py | 29 +- test/unit/common/ring/test_utils.py | 11 +- test/unit/common/test_bufferedhttp.py | 6 +- test/unit/common/test_db.py | 63 ++- test/unit/common/test_db_replicator.py | 44 ++ test/unit/common/test_storage_policy.py | 108 ++++ test/unit/common/test_utils.py | 7 + test/unit/common/test_wsgi.py | 10 +- test/unit/container/test_server.py | 9 +- test/unit/container/test_updater.py | 8 +- test/unit/helpers.py | 19 +- test/unit/obj/test_auditor.py | 58 +- test/unit/obj/test_diskfile.py | 600 +++++++++++++++++++-- test/unit/obj/test_server.py | 14 +- test/unit/obj/test_ssync.py | 3 +- test/unit/obj/test_ssync_receiver.py | 6 +- test/unit/obj/test_updater.py | 11 +- test/unit/proxy/test_server.py | 16 +- 45 files changed, 1614 insertions(+), 349 deletions(-)
participants (1)
-
no-reply@openstack.org