Changelog for
openstack-swift-container-2.19.3~dev3-lp151.2.1.noarch.rpm :
* Wed Jan 18 2023 Darragh O\'Reilly
- s3api: Prevent XXE injections (bsc#1207035, CVE-2022-47950) * Thu Nov 21 2019 cloud-develAATTsuse.de- Update to version swift-2.19.2.dev48: 2.19.2 (rocky stable backports) * 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 container-replicator now correctly enqueues container-reconciler work for sharded containers. * S3 API improvements * Fixed an issue where v4 signatures would not be validated against the body of the request, allowing a replay attack if request headers were captured by a malicious third party. Note that unsigned payloads still function normally. * CompleteMultipartUpload requests with a Content-MD5 now work. * Fixed v1 listings that end with a non-ASCII object name. * Multipart object segments are now actually deleted when the multipart object is deleted via the S3 API. * Fixed an issue that caused Delete Multiple Objects requests with large bodies to 400. This was previously fixed in 2.20.0. * Fixed an issue where non-ASCII Keystone EC2 credentials would not get mapped to the correct account. This was previously fixed in 2.20.0. * Thu Mar 28 2019 Johannes Grassler - Update to version 2.19.2.dev1 * Imported Translations from Zanata * Fixing target for cross-ref \'get_data_dir\' * Sun Feb 17 2019 cloud-develAATTsuse.de- Update to version swift-2.19.1.dev13: 2.19.1 (rocky stable backports) * Prevent PyKMIP\'s kmip_protocol logger from logging at DEBUG. Previously, some versions of PyKMIP would include all wire data when the root logger was configured to log at DEBUG; this could expose key material in logs. Only the kmip_keymaster was affected. * Fixed an issue where a failed drive could prevent the container sharder from making progress. * Fixed a bug in how Swift uses eventlet that was exposed under high concurrency. * Thu Feb 07 2019 Johannes Grassler - Update to version swift-2.19.1.dev10: * Use eventlet.patcher.original to get Python select module in get_hub * Prevent kmip_protocol logger from logging at DEBUG * fixed _check_node() in the container sharder * Wed Dec 12 2018 Chris DeVita - set the permissions on dispersion.conf in openstack-swift.spec so that it is owned by swift:swift instead of root:root (bnc#1103759) * Thu Nov 22 2018 cloud-develAATTsuse.de- Update to version swift-2.19.1.dev7: * Imported Translations from Zanata * Thu Oct 04 2018 cloud-develAATTsuse.de- Update to version swift-2.19.1.dev6: * Move legacy-swift-dsvm-functional job in-tree * Thu Oct 04 2018 Johannes Grassler - Add Require for python-lxml * Sat Sep 08 2018 cloud-develAATTsuse.de- Update to version swift-2.19.1.dev5: swift (2.19.0, OpenStack Rocky) * Fri Aug 31 2018 kwuAATTsuse.com- switch to stable/rocky branch * Tue Aug 28 2018 cloud-develAATTsuse.de- Update to version swift-2.19.1.dev14: swift (2.19.0, OpenStack Rocky) * Wed Aug 22 2018 cloud-develAATTsuse.de- Update to version swift-2.18.1.dev229: swift (2.19.0) * TempURLs now support IP range restrictions. Please see https://docs.openstack.org/swift/latest/middleware.html#client-usage for more information on how to use this additional restriction. * Add support for multiple root encryption secrets for the trivial and KMIP keymasters. This allows operators to rotate encryption keys over time without needing to re-encrypt all existing data in the cluster. Please see the included sample config files for instructions on how to multiple encryption keys. * The object updater now supports two configuration settings: \"concurrency\" and \"updater_workers\". The latter controls how many worker processes are spawned, while the former controls how many concurrent container updates are performed by each worker process. This should speed the processing of async_pendings. On upgrade, a node configured with concurrency=N will still handle async updates N-at-a-time, but will do so using only one process instead of N. If you have a config file like this: [object-updater] concurrency = and you want to take advantage of faster updates, then do this: [object-updater] * Mon Aug 20 2018 comurphyAATTsuse.com- Fix license linter errors * Mon Aug 20 2018 comurphyAATTsuse.com- Update to version swift-2.18.1.dev224: swift (2.18.0) * Added container sharding, an operator controlled feature that may be used to shard very large container databases into a number of smaller shard containers. This mitigates the issues with one large DB by distributing the data across multiple smaller databases throughout the cluster. Please read the full overview at https://docs.openstack.org/swift/latest/overview_container_sharding.html * Provide an S3 API compatibility layer. The external \"swift3\" project has been imported into Swift\'s codebase as the \"s3api\" middleware. * Added \"emergency mode\" hooks in the account and container replicators. These options may be used to prioritize moving handoff partitions to primary locations more quickly. This helps when adding capacity to a ring. - Added `-d ` and `-p ` command line options. - Added a handoffs-only mode. * Add a multiprocess mode to the object replicator. Setting the \"replicator_workers\" setting to a positive value N will result in the replicator using up to N worker processes to perform replication tasks. At most one worker per disk will be spawned. Worker process logs will have a bit of information prepended so operators can tell which messages came from which worker. The * Thu Apr 05 2018 tbechtoldAATTsuse.com- Add missing Requires for python-six and python-cryptography * Sat Feb 03 2018 cloud-develAATTsuse.de- Update to version swift-2.16.1.dev191: swift (2.17.0) * Added symlink objects support. Symlink objects reference one other object. They are created by creating an empty object with an X-Symlink-Target header. The value of the header is of the format /, and the target does not need to exist at the time of symlink creation. Cross-account symlinks can be created by including the X-Symlink-Target-Account header. GET and HEAD requests to a symlink will operate on the referenced object and require appropriate permission in the target container. DELETE and PUT requests will operate on the symlink object itself. POST requests are not forwarded to the referenced object. POST requests sent to a symlink will result in a 307 Temporary Redirect response. * Added support for inline data segments in SLO manifests. Upgrade impact: during a rolling upgrade, an updated proxy server may write a manifest that an out-of-date proxy server will not be able to read. This will resolve itself once the upgrade completes on all nodes. * The tempurl digest algorithm is now configurable, and Swift added support for both SHA-256 and SHA-512. Supported tempurl digests are exposed to clients in `/info`. Additionally, tempurl signatures can now be base64 encoded. * Tue Dec 12 2017 gosipyanAATTsuse.com- Remove `swift-temp-url` script The functionality exist in swiftclient Add container-sync-realms.conf.5.gz and container-reconciler.conf.5.gz * Tue Dec 12 2017 gosipyanAATTsuse.com - Update to version swift-2.16.1.dev21: swift (2.16.0) * Add checksum to object extended attributes. * Let clients request heartbeats during SLO PUTs by including the query parameter `heartbeat=on`. With heartbeating turned on, the proxy will start its response immediately with 202 Accepted then send a single whitespace character periodically until the request completes. At that point, a final summary chunk will be sent which includes a \"Response Status\" key indicating success or failure and (if successful) an \"Etag\" key indicating the Etag of the resulting SLO. * Added support for retrieving the encryption root secret from an external key management system. In practice, this is currently limited to Barbican. * Move listing formatting out to a new proxy middleware named `listing_formats`. `listing_formats` should be just right of the first proxy-logging middleware, and left of most other middlewares. If it is not already present, it will be automatically inserted for you. Note: if you have a custom middleware that makes account or container listings, it will only receive listings in JSON format. * Log deprecation warning for `allow_versions` in the container server config. Configure the `versioned_writes` middleware in * Sat Sep 16 2017 cloud-develAATTsuse.de- Update to version swift-2.15.2.dev57: https://docs.openstack.org/swift/latest/logs.html#swift-source for https://docs.openstack.org/swift/latest/overview_object_versioning.html. https://docs.openstack.org/swift/latest/admin_guide.html https://developer.openstack.org/api-ref/object-storage/. https://docs.openstack.org/swift/latest/overview_encryption.html. found at https://docs.openstack.org/swift/latest/ops_runbook/index.html and https://docs.openstack.org/swift/latest/overview_container_sync.html for more details https://docs.openstack.org/swift/latest/middleware.html#how-to-enable-object-versioning-in-a-swift-cluster Full docs are at https://docs.openstack.org/swift/latest/overview_erasure_code.html See https://docs.openstack.org/swift/latest/overview_auth.html for more details. swift_source. See https://docs.openstack.org/swift/latest/logs.html for details. See https://docs.openstack.org/swift/latest/overview_ring.html Please see https://docs.openstack.org/swift/latest/overview_auth.html for Full docs are at https://docs.openstack.org/swift/latest/overview_policies.html https://docs.openstack.org/swift/latest/overview_auth.html https://docs.openstack.org/swift/latest/overview_container_sync.html for full information. https://docs.openstack.org/swift/latest/crossdomain.html for details https://docs.openstack.org/swift/latest/apache_deployment_guide.html docs at https://docs.openstack.org/swift/latest/misc.html. * Sat Aug 19 2017 cloud-develAATTsuse.de- Update to version swift-2.15.1.dev43: swift (2.15.1) * Fixed a bug introduced in 2.15.0 where the object reconstructor would exit with a traceback if no EC policy was configured. * Fixed deadlock when logging from a tpool thread. The object server runs certain IO-intensive methods outside the main pthread for performance. Previously, if one of those methods tried to log, this can cause a crash that eventually leads to an object server with hundreds or thousands of greenthreads, all deadlocked. The fix is to use a mutex that works across different greenlets and different pthreads. * The object reconstructor can now rebuild an EC fragment for an expired object. * Various other minor bug fixes and improvements. * Fri Jul 28 2017 cloud-develAATTsuse.de- Update to version swift-2.14.1.dev183: swift (2.15.0) * Add Composite Ring Functionality A composite ring comprises two or more component rings that are combined to form a single ring with a replica count equal to the sum of the component rings. The component rings are built independently, using distinct devices in distinct regions, which means that the dispersion of replicas between the components can be guaranteed. Composite rings can be used for explicit replica placement and \"replicated EC\" for global erasure codes policies. Composite rings support \'cooperative\' rebalance which means that during rebalance all component rings will be consulted before a partition is moved in any component ring. This avoids the same partition being simultaneously moved in multiple components. We do not yet have CLI tools for creating composite rings, but the functionality has been enabled in the ring modules to support this advanced functionality. CLI tools will be delivered in a subsequent release. For further information see the docs at * The EC reconstructor process has been dramatically improved by adding support for multiple concurrent workers. Multiple processes are required to get high concurrency, and this change * Tue Jul 11 2017 tbechtoldAATTsuse.com- update to 2.14.1~a0~dev139 * Thu Apr 27 2017 cloud-develAATTsuse.de- Update to version swift-2.13.1.dev153: swift (2.14.0) * 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. * EC Fragment Duplication - Foundational Global EC Cluster Support. * Fixed encoding issue in ssync where a mix of ascii and non-ascii metadata values would cause an error. * `name_check` and `cname_lookup` keys have been added to `/info`. * Add Vary: headers for CORS responses. * Always set Swift processes to use UTC. * Prevent logged traceback in object-server on client disconnect for chunked transfers to replicated policies. * Removed per-device reconstruction stats. Now that the reconstructor is shuffling parts before going through them, those stats no longer make sense. * Log correct status code for conditional requests. * Thu Mar 09 2017 cloud-develAATTsuse.de- Update to version swift-2.13.1.dev44: found at http://docs.openstack.org/developer/swift/ops_runbook/index.html and http://docs.openstack.org/developer/swift/overview_container_sync.html for more details http://docs.openstack.org/developer/swift/middleware.html#how-to-enable-object-versioning-in-a-swift-cluster Full docs are at http://docs.openstack.org/developer/swift/overview_erasure_code.html See http://docs.openstack.org/developer/swift/overview_auth.html for more details. swift_source. See http://docs.openstack.org/developer/swift/logs.html for details. Please see http://docs.openstack.org/developer/swift/overview_auth.html for Full docs are at http://docs.openstack.org/developer/swift/overview_policies.html http://docs.openstack.org/developer/swift/overview_auth.html http://docs.openstack.org/developer/swift/overview_container_sync.html for full * Fri Feb 17 2017 cloud-develAATTsuse.de- Update to version swift-2.12.1.dev107: swift (2.13.0, OpenStack Ocata) * Improvements in key parts of the consistency engine - Improved performance by eliminating an unneeded directory structure hash. - 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. - The erasure code reconstructor will now shuffle work jobs across all disks instead of going disk-by-disk. This eliminates single-disk I/O contention and allows continued scaling as concurrency is increased. - Erasure code reconstruction handles moving data from handoff nodes better. Instead of moving the data to another handoff, it waits until it can be moved to a primary node. 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 * Fri Feb 03 2017 tbechtoldAATTsuse.com- Remove swift.conf.d/ dir. Swift does not use oslo.config so this does not work. * Thu Dec 15 2016 aplanasAATTsuse.com- Create /etc/swift/swift.conf.d * Thu Dec 15 2016 cloud-develAATTsuse.de- Update to version swift-2.11.1.dev70: 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. * Wed Dec 07 2016 aplanasAATTsuse.com- systemd: remove Wants from services. * Tue Nov 29 2016 steven.kowalikAATTsuse.com- Switch to systemd service files. + Create /var/lib/swift + Remove shorter swift-container links, no longer needed since startproc is no longer used. * Sat Nov 19 2016 cloud-develAATTsuse.de- Update to version swift-2.11.1.dev5: swift (2.11.0) * We have made significant improvements and changes to the erasure code implementation. - Instead of using a separate .durable file to indicate the durable status of an EC fragment archive, we rename the .data to include a durable marker in the filename. This saves one inode for every EC .data file. Existing .durable files will not be removed, and they will continue to work just fine. Note that after writing EC data with Swift 2.11.0 or later, that data will not be accessible to earlier versions of Swift. - 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 on read requests and, if bad data is found, the fragment will be quarantined. - The improvements to EC reads made in Swift 2.10.0 have also been applied to the reconstructor. This allows fragments to be rebuilt in more circumstances, resulting in faster recovery from failures. - WARNING: If you are using the ISA-L library for erasure codes, please upgrade to liberasurecode 1.3.1 (or later) as soon as possible. If you are using isa_l_rs_vand with more than 4 parity, please read https://bugs.launchpad.net/swift/+bug/1639691 and take necessary action. * Sat Sep 24 2016 cloud-develAATTsuse.de- Update to version swift-2.9.1.dev281: swift (2.10.0, OpenStack Newton) * Object versioning now supports a \"history\" mode in addition to the older \"stack\" mode. The difference is in how DELETE requests are handled. For full details, please read http://docs.openstack.org/developer/swift/overview_object_versioning.html. * New config variables to change the schedule priority and I/O scheduling class. Servers and daemons now understand `nice_priority`, `ionice_class`, and `ionice_priority` to schedule their relative importance. Please read http://docs.openstack.org/developer/swift/deployment_guide.html for full config details. * On newer kernels (3.15+ when using xfs), Swift will use the O_TMPFILE flag when opening a file instead of creating a temporary file and renaming it on commit. This makes the data path simpler and allows the filesystem to more efficiently optimize the files on disk, resulting in better performance. * Erasure code GET performance has been significantly improved in clusters that are not completely healthy. * Significant improvements to the api-ref doc available at http://developer.openstack.org/api-ref/object-storage/. * A PUT or POST to a container will now update the container\'s Last-Modified time, and that value will be included in a GET/HEAD response. * Wed Sep 21 2016 mjuraAATTsuse.com- Update to version 2.9.1.dev270 * Tue Sep 06 2016 tbechtoldAATTsuse.com- Update to version 2.9.1.dev209 * Fri Aug 26 2016 aplanasAATTsuse.com- Revert generate PID file for systemd (bsc#991985) * Mon Aug 22 2016 aplanasAATTsuse.com- Generate PID file for systemd (bsc#991985) * Thu Jul 14 2016 cloud-develAATTsuse.de- Update to version swift-2.8.1.dev93: swift (2.9.0) * Swift now supports at-rest encryption. This feature encrypts all object data and user-set object metadata as it is sent to the cluster. This feature is designed to prevent information leaks if a hard drive leaves the cluster. The encryption is transparent to the end-user. At-rest encryption in Swift is enabled on the proxy server by adding two middlewares to the pipeline. The `keymaster` middleware is responsible for managing the encryption keys and the `encryption` middleware does the actual encryption and decryption. Existing clusters will continue to work without enabling encryption. Although enabling this feature on existing clusters is supported, best practice is to enable this feature on new clusters when the cluster is created. For more information on the details of the at-rest encryption feature, please see the docs at http://docs.openstack.org/developer/swift/overview_encryption.html. * `swift-recon` can now be called with more than one server type. * Fixed a bug where non-ascii names could cause an error in logging and cause a 5xx response to the client. * The install guide and API reference have been moved into Swift\'s source code repository. * Various other minor bug fixes and improvements. * Mon Jun 27 2016 jsuchomeAATTsuse.com- Add systemd service macros (bnc#986415) systemd v228 has a separate generator for generating the service files from the init scripts, and daemon-reload is needed during package installation * Tue Jun 07 2016 cloud-develAATTsuse.de- Update to version swift-2.7.1.dev184: swift (2.8.0) * Allow concurrent bulk deletes for server-side deletes of static large objects. Previously this would be single-threaded and each DELETE executed serially. The new `delete_concurrency` value (default value is 2) in the `[filter:slo]` and `[filter:bulk]` sections of the proxy server config controls the concurrency used to perform the DELETE requests for referenced segments. The default value is recommended, but setting the value to 1 restores previous behavior. * Refactor server-side copy as middleware The COPY verb is now implemented in the `copy` middleware instead of in the proxy server code. If not explicitly added, the server side copy middleware is auto-inserted to the left of `dlo`, `slo` and `versioned_writes` middlewares in the proxy server pipeline. As a result, dlo and slo `copy_hooks` are no longer required. SLO manifests are now validated when copied so when copying a manifest to another account the referenced segments must be readable in that account for the manifest copy to succeed (previously this validation was not made, meaning the manifest was copied but could be unusable if the segments were not readable). With this change, there should be no change in functionality or existing behavior. * `fallocate_reserve` can now be a percentage (a value ending in \"%\"), and the default has been adjusted to \"1%\". * Tue Apr 19 2016 rhaferAATTsuse.com- Fix filelist, README.md was moved to README.rst * Thu Mar 24 2016 cloud-develAATTsuse.de- Update to version swift-2.6.1.dev262: swift (2.7.0, OpenStack Mitaka) * Bump PyECLib requirement to >= 1.2.0 * Update container on fast-POST \"Fast-POST\" is the mode where `object_post_as_copy` is set to `False` in the proxy server config. This mode now allows for fast, efficient updates of metadata without needing to fully recopy the contents of the object. While the default still is `object_post_as_copy` as True, the plan is to change the default to False and then deprecate post-as-copy functionality in later releases. Fast-POST now supports container-sync functionality. * Add concurrent reads option to proxy. This change adds 2 new parameters to enable and control concurrent GETs in Swift, these are `concurrent_gets` and `concurrency_timeout`. `concurrent_gets` allows you to turn on or off concurrent GETs; when on, it will set the GET/HEAD concurrency to the replica count. And in the case of EC HEADs it will set it to ndata. The proxy will then serve only the first valid source to respond. This applies to all account, container, and replicated object GETs and HEADs. For EC only HEAD requests are affected. The default for `concurrent_gets` is off. `concurrency_timeout` is related to `concurrent_gets` and is the amount of time to wait before firing the next thread. A value of 0 will fire at the same time (fully concurrent), but * Mon Feb 29 2016 johannes.grasslerAATTsuse.com- Ensure swift services are started after openstack-keystone (bsc#955786) * Fri Feb 26 2016 cloud-develAATTsuse.de- Update to version swift-2.6.1.dev138: swift (2.6.0) * Dependency changes - Updated minimum version of eventlet to 0.17.4 to support IPv6. - Updated the minimum version of PyECLib to 1.0.7. * The ring rebalancing algorithm was updated to better handle edge cases and to give better (more balanced) rings in the general case. New rings will have better initial placement, capacity adjustments will move less data for better balance, and existing rings that were imbalanced should start to become better balanced as they go through rebalance cycles. * Added container and account reverse listings. A GET request to an account or container resource with a \"reverse=true\" query parameter will return the listing in reverse order. When iterating over pages of reverse listings, the relative order of marker and end_marker are swapped. * Storage policies now support having more than one name. This allows operators to fix a typo without breaking existing clients, or, alternatively, have \"short names\" for policies. This is implemented with the \"aliases\" config key in the storage policy config in swift.conf. The aliases value is a list of names that the storage policy may also be identified by. The storage policy \"name\" is used to report the policy to users (eg in container headers). The aliases have the same naming restrictions as the policy\'s primary name. * Fri Jan 15 2016 vuntzAATTsuse.com- Fix init script for openstack-swift-object-expirer to reference object-expirer.conf, and not object-server.conf. * Sun Oct 04 2015 cloud-develAATTsuse.de- Update to version swift-2.4.1.dev70: swift (2.5.0, OpenStack Liberty) * Added the ability to specify ranges for Static Large Object (SLO) segments. * Replicator configs now support an \"rsync_module\" value to allow for per-device rsync modules. This setting gives operators the ability to fine-tune replication traffic in a Swift cluster and isolate replication disk IO to a particular device. Please see the docs and sample config files for more information and examples. * Significant work has gone in to testing, fixing, and validating Swift\'s erasure code support at different scales. * Swift now emits StatsD metrics on a per-policy basis. * Fixed an issue with Keystone integration where a COPY request to a service account may have succeeded even if a service token was not included in the request. * Ring validation now warns if a placement partition gets assigned to the same device multiple times. This happens when devices in the ring are unbalanced (e.g. two servers where one server has significantly more available capacity). * Various other minor bug fixes and improvements. * Wed Sep 02 2015 cloud-develAATTsuse.de- Update to version swift-2.3.1.dev356: swift (2.4.0) * Dependency changes - Added six requirement. This is part of an ongoing effort to add support for Python 3. - Dropped support for Python 2.6. * Config changes - Recent versions of Python restrict the number of headers allowed in a request to 100. This number may be too low for custom middleware. The new \"extra_header_count\" config value in swift.conf can be used to increase the number of headers allowed. - Renamed \"run_pause\" setting to \"interval\" (current configs with run_pause still work). Future versions of Swift may remove the run_pause setting. * Versioned writes middleware The versioned writes feature has been refactored and reimplemented as middleware. You should explicitly add the versioned_writes middleware to your proxy pipeline, but do not remove or disable the existing container server config setting (\"allow_versions\"), if it is currently enabled. The existing container server config setting enables existing containers to continue being versioned. Please see http://swift.openstack.org/middleware.html#how-to-enable-object-versioning-in-a-swift-cluster for further upgrade notes. * Fri Aug 21 2015 cloud-develAATTsuse.de- Update to version swift-2.3.1.dev307: swift (2.3.0, OpenStack Kilo) swift (2.2.0, OpenStack Juno) swift (1.13.1, OpenStack Icehouse) swift (1.10.0, OpenStack Havana) swift (1.8.0, OpenStack Grizzly) swift (1.7.4, OpenStack Folsom) swift (1.4.8, OpenStack Essex) swift (1.4.3, OpenStack Diablo) Changelog entries for previous versions are incomplete swift (1.3.0, OpenStack Cactus) swift (1.2.0, OpenStack Bexar) swift (1.0.0, OpenStack Austin) * Thu Jul 23 2015 dmuellerAATTsuse.com- add missing PyECLib requires * Mon May 04 2015 vuntzAATTopensuse.org- Update to version swift-2.3.1.dev12: swift (2.3.0) * Erasure Code support (beta) Swift now supports an erasure-code (EC) storage policy type. This allows deployers to achieve very high durability with less raw capacity as used in replicated storage. However, EC requires more CPU and network resources, so it is not good for every use case. EC is great for storing large, infrequently accessed data in a single region. Swift\'s implementation of erasure codes is meant to be transparent to end users. There is no API difference between replicated storage and EC storage. To support erasure codes, Swift now depends on PyECLib and liberasurecode. liberasurecode is a pluggable library that allows for the actual EC algorithm to be implemented in a library of your choosing. As a beta release, EC support is nearly fully feature complete, but it is lacking support for some features (like multi-range reads) and has not had a full performance characterization. This feature relies on ssync for durability. Deployers are urged to do extensive testing and not deploy production data using an erasure code storage policy. Full docs are at http://swift.openstack.org/overview_erasure_code.html * Add support for container TempURL Keys. * Make more memcache options configurable. connection_timeout, pool_timeout, tries, and io_timeout are all now configurable.- Add init script for new object-reconstructor service. * Fri Feb 13 2015 dmuellerAATTsuse.com- update logrotate.conf * Fri Jan 30 2015 cloud-develAATTsuse.de- Update to version swift-2.2.2rc1.post9: swift (2.2.2) * Data placement changes This release has several major changes to data placement in Swift in order to better handle different deployment patterns. First, with an unbalance-able ring, less partitions will move if the movement doesn\'t result in any better dispersion across failure domains. Also, empty (partition weight of zero) devices will no longer keep partitions after rebalancing when there is an unbalance-able ring. Second, the notion of \"overload\" has been added to Swift\'s rings. This allows devices to take some extra partitions (more than would normally be allowed by the device weight) so that smaller and unbalanced clusters will have less data movement between servers, zones, or regions if there is a failure in the cluster. Finally, rings have a new metric called \"dispersion\". This is the percentage of partitions in the ring that have too many replicas in a particular failure domain. For example, if you have three servers in a cluster but two replicas for a partition get placed onto the same server, that partition will count towards the dispersion metric. A lower value is better, and the value can be used to find the proper value for \"overload\". The overload and dispersion metrics have been exposed in the swift-ring-build CLI tools. See http://docs.openstack.org/developer/swift/overview_ring.html for more info on how data placement works now. * Tue Dec 16 2014 cloud-develAATTsuse.de- Update to version swift-2.2.1c1.2.g8bbb50d: swift (2.2.1) * Swift now rejects object names with Unicode surrogates. * Return 403 (instead of 413) on unauthorized upload when over account quota. * Fix a rare condition when a rebalance could cause swift-ring-builder to crash. This would only happen on old ring files when \"rebalance\" was the first command run. * Storage node error limits now survive a ring reload. * Speed up reading and writing xattrs for object metadata by using larger xattr value sizes. The change is moving from 254 byte values to 64KiB values. There is no migration issue with this. * Deleted containers beyond the reclaim age are now properly reclaimed. * Full Simplified Chinese translation (zh_CN locale) for errors and logs. * Container quota is now properly enforced during cross-account COPY. * ssync replication now properly uses the configured replication_ip. * Fixed issue were ssync did not replicate custom object headers. * swift-drive-audit now has the \'unmount_failed_device\' config option (default to True) that controls if the process will unmount failed drives or not. * Wed Oct 15 2014 jsuchomeAATTsuse.cz- logrotate fix: logs are not owned by swift user, but by root