[swift] swift 2.14.0 (pike)
We high-spiritedly announce the release of: swift 2.14.0: OpenStack Object Storage This release is part of the pike release series. Download the package from: https://tarballs.openstack.org/swift/ For more details, please see below. 2.14.0 ^^^^^^ New Features ************ * EC Fragment Duplication - Foundational Global EC Cluster Support. * name_check and cname_lookup keys have been added to */info*. * Add Vary headers for CORS responses. * Always set Swift processes to use UTC. * Removed per-device reconstruction stats. Now that the reconstructor is shuffling parts before going through them, those stats no longer make sense. * domain_remap now accepts a list of domains in "storage_domain". * Do not follow CNAME when host is in storage_domain. * Enable cluster-wide CORS Expose-Headers setting via "cors_expose_headers". * Cache all answers from nameservers in cname_lookup. Bug Fixes ********* * 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. * Fixed UnicodeDecodeError in the object reconstructor that would prevent objects with non-ascii names from being reconstructed and caused the reconstructor process to hang. * Fixed encoding issue in ssync where a mix of ascii and non-ascii metadata values would cause an error. * Log the correct request type of a subrequest downstream of copy. * Prevent logged traceback in object-server on client disconnect for chunked transfers to replicated policies. * Fixed a race condition in updating hashes.pkl where a partition suffix invalidation may have been skipped. * Include received fragment index in reconstructor log warnings. * Log correct status code for conditional requests. Other Notes *********** * Drop support for auth-server from common/manager.py and *swift- init*. * Various other minor bug fixes and improvements. Changes in swift 2.13.0..2.14.0 ------------------------------- 29e2edf authors/changelog for 2.14.0 6be5196 Make add_dev complain louder about missing keys a480f6c Update version from Newton to Ocata 1776e0f Improve test_get_valid_utf8_str coverage 091157f Fix encoding issue in ssync_sender.send_put() b41f47f Follow up tests for get_hashes regression 702c24d Remove redundant assignments of self._datadir 83750cf Fix UnicodeDecodeError in reconstructor _full_path function b2a3fab Add license in swift/common/ring 758dad8 Update SUSE distro information in install guide ba52db8 Update swift version in storage-install-ubuntu. ab5a699 Update swift version in storage-install-rdo.rst. feedf50 Update version in finalize-installation-ubuntu 928fc36 Update version in controller-install-rdo a27b291 Update version in controller-install-ubuntu e3420e1 Update version in controller-install-debian 7d7cbef Update version in finalize-installation-rdo 6788bf4 Fixed get ring name from recon cli d633e9d Update reno for stable/ocata bcd0eb7 Container drive error results double space usage on rest drives 71516ae Optimize the link address 88ebcaf Fix intermittent test_unlink_* failures cce7192 Clean up some doc formatting 95905b0 Modify _get_hashes() arguments to be more generic 36b1a2f Fix some reST field lists in docstrings cff7455 Remove unused returned value object_path from yield_hashes() 47ba104 Use swift tempurl instaed of swift-temp-url a15b2a2 Test that Manager.reload does stop/start in that order 9edf914 Drop support for auth-server from common/manager 21396bc keep consistent naming convention of swift and urls dfeae59 Factor out a bunch of common testing setup 8fe4bfe TestObjectController refactoring 7d08b07 Clean up unused function 3b83bd4 Remove duplicate code in test_diskfile.py bd400dd Add extra test for name_check /info cd39778 add name_check to /info 108501a Log the correct request type of a subrequest downstream of copy 52a23dd Fix race when consolidating new partition 99412d4 fix get ring name aa9afb5 Test EC chunk_transformer with larger input chunks 56349e0 Include received frag_index in reconstructor log warnings a2f4046 Small fixes for ec duplication 4f5c03c Fix intermittent EC GET test failure 7dd1985 Update calling super class constructor style in proxy controllers b958466 More port number cleanup b1f6de4 Update .mailmap 9afe2ba Add another failing test for 412 logging 4d3aa4e refactor some common code from crypto 5f610c7 Support EC policy for in process functional tests 3cabafa Fix the typo 110d785 Use real mocking in unit tests test_cname_lookup 3c844d0 Replace references to swift.openstack.org adcb4c2 Document SAIO rsync service setup for ubuntu 16 54fe738 Add assertions to test_reconstructor test_get_response 4187c83 Optimize ec duplication and its md5 hashing da92fe4 Cache all answers from nameservers in cname_lookup 38b99ad Global EC Under Development Documentation d621277 Fix cname_lookup/eventlet 0.20+ DNS exceptions 2ca3035 Make Sphinx treat warnings as errors 0e44770 Follow up the reconstructor test coverage 54347f9 Cleanup reconstructor tests 740d683 Fix port ranges in install guide f995472 Remove unused variable 4f89861 fix bindep file to enable func test in centos 96f8b95 Increase test coverage for reconstructor f3ef616 Stop using client headers for cross-middleware communication e4972f5 Fixups for EC frag duplication tests 9b47de3 Enable cluster-wide CORS Expose-Headers setting 2e199be Probe tests fail, as requests checks for strings. 5cc303e Modify the spelling mistakes 5f11163 Expand SLO manifest documentation. 9a17e61 Do not follow CNAME when host is in storage_domain 4ccf75f Log correct status code for conditional requests 40ba7f6 EC Fragment Duplication - Foundational Global EC Cluster Support 9a36a35 We don't "yield" in collect_parts anymore 9be1d8b Fix tox -e docs sphinx errors 8973ceb Remove per-device reconstruction stats e6245d1 Register cname_lookup on /info 5c93d6f Accept storage_domain as a list in domain_remap 600db48 Follow up on reconstructor handoffs_only 08ac32e Prevent traceback in object-server on client disconnect fb3d01a Fixed indentation in common/ and obj/ 5cd3095 Give spawn a cycle 523bc0a Always set swift processes to use UTC 3e46079 Add Vary: headers for CORS responses Diffstat (except docs and test files) ------------------------------------- .mailmap | 4 +- AUTHORS | 10 +- CHANGELOG | 71 +- README.rst | 4 +- .../samples/endpoints-list-response-headers.json | 14 +- .../source/samples/endpoints-list-response.json | 6 +- api-ref/source/storage-object-services.inc | 5 + bin/swift-get-nodes | 2 +- bindep.txt | 2 +- etc/proxy-server.conf-sample | 14 +- etc/swift.conf-sample | 6 +- install-guide/source/controller-install-debian.rst | 2 +- install-guide/source/controller-install-obs.rst | 4 +- install-guide/source/controller-install-rdo.rst | 2 +- install-guide/source/controller-install-ubuntu.rst | 2 +- install-guide/source/finalize-installation-obs.rst | 4 +- install-guide/source/finalize-installation-rdo.rst | 2 +- .../source/finalize-installation-ubuntu-debian.rst | 2 +- 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 +- install-guide/source/storage-install-obs.rst | 4 +- install-guide/source/storage-install-rdo.rst | 6 +- .../source/storage-install-ubuntu-debian.rst | 6 +- .../notes/2_14_0_release-7c3ef515ebded888.yaml | 41 + releasenotes/source/index.rst | 2 + releasenotes/source/ocata.rst | 6 + setup.cfg | 1 + swift/cli/info.py | 2 +- swift/cli/recon.py | 2 +- swift/common/daemon.py | 7 +- swift/common/db_replicator.py | 10 +- swift/common/manager.py | 3 +- swift/common/middleware/cname_lookup.py | 23 +- swift/common/middleware/copy.py | 14 +- swift/common/middleware/crypto/crypto_utils.py | 18 +- swift/common/middleware/crypto/decrypter.py | 6 - swift/common/middleware/domain_remap.py | 15 +- swift/common/middleware/keystoneauth.py | 2 +- swift/common/middleware/name_check.py | 20 +- swift/common/middleware/slo.py | 16 +- swift/common/middleware/staticweb.py | 2 +- swift/common/middleware/tempauth.py | 19 +- swift/common/ring/__init__.py | 16 + swift/common/ring/builder.py | 11 +- swift/common/storage_policy.py | 57 +- swift/common/utils.py | 19 +- swift/common/wsgi.py | 16 +- swift/obj/diskfile.py | 100 +- swift/obj/mem_diskfile.py | 2 +- swift/obj/reconstructor.py | 251 +- swift/obj/replicator.py | 8 +- swift/obj/server.py | 6 +- swift/obj/ssync_sender.py | 6 +- swift/proxy/controllers/account.py | 2 +- swift/proxy/controllers/base.py | 32 +- swift/proxy/controllers/container.py | 2 +- swift/proxy/controllers/info.py | 2 +- swift/proxy/controllers/obj.py | 96 +- swift/proxy/server.py | 4 + test-requirements.txt | 2 +- test/functional/__init__.py | 80 +- test/functional/test_versioned_writes.py | 162 +- test/probe/test_object_expirer.py | 4 +- test/probe/test_reconstructor_rebuild.py | 29 +- test/probe/test_replication_servers_working.py | 4 +- test/unit/__init__.py | 171 +- test/unit/cli/test_recon.py | 20 + .../common/middleware/crypto/test_crypto_utils.py | 5 + test/unit/common/middleware/test_cname_lookup.py | 183 +- test/unit/common/middleware/test_copy.py | 24 +- test/unit/common/middleware/test_domain_remap.py | 39 + test/unit/common/middleware/test_name_check.py | 34 + .../common/middleware/test_subrequest_logging.py | 175 + test/unit/common/middleware/test_tempauth.py | 21 +- test/unit/common/ring/test_builder.py | 7 + test/unit/common/test_daemon.py | 31 +- test/unit/common/test_db_replicator.py | 44 + test/unit/common/test_manager.py | 63 +- test/unit/common/test_storage_policy.py | 84 +- test/unit/common/test_utils.py | 82 +- test/unit/common/test_wsgi.py | 28 +- test/unit/helpers.py | 54 +- test/unit/obj/test_diskfile.py | 267 +- test/unit/obj/test_reconstructor.py | 968 ++- test/unit/obj/test_replicator.py | 7 +- test/unit/obj/test_server.py | 49 +- test/unit/obj/test_ssync_sender.py | 76 +- test/unit/proxy/controllers/test_obj.py | 946 ++- test/unit/proxy/test_mem_server.py | 5 +- test/unit/proxy/test_server.py | 6886 ++++++++++---------- tox.ini | 5 + 144 files changed, 7431 insertions(+), 4616 deletions(-) Requirements updates -------------------- diff --git a/test-requirements.txt b/test-requirements.txt index 04ea66b..5b944ec 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -13 +13 @@ oslosphinx>=4.7.0 # Apache-2.0 -sphinx!=1.3b1,<1.4,>=1.2.1 # BSD +sphinx>=1.5.1 # BSD
participants (1)
-
no-reply@openstack.org