# Andi Chandler <andi@gowling.com>, 2017. #zanata
# Andi Chandler <andi@gowling.com>, 2018. #zanata
# Andi Chandler <andi@gowling.com>, 2020. #zanata
# Andi Chandler <andi@gowling.com>, 2022. #zanata
msgid ""
msgstr ""
"Project-Id-Version: Swift Release Notes\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-11-14 17:40+0000\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"PO-Revision-Date: 2022-11-04 10:55+0000\n"
"Last-Translator: Andi Chandler <andi@gowling.com>\n"
"Language-Team: English (United Kingdom)\n"
"Language: en_GB\n"
"X-Generator: Zanata 4.3.3\n"
"Plural-Forms: nplurals=2; plural=(n != 1)\n"

msgid ""
"**Dependency update**: ``eventlet`` must be at least 0.25.0. This also "
"dragged forward minimum-supported versions of ``dnspython`` (1.15.0), "
"``greenlet`` (0.3.2), and ``six`` (1.10.0)."
msgstr ""
"**Dependency update**: ``eventlet`` must be at least 0.25.0. This also "
"dragged forward minimum-supported versions of ``dnspython`` (1.15.0), "
"``greenlet`` (0.3.2), and ``six`` (1.10.0)."

msgid ""
"**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."
msgstr ""
"**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."

msgid ""
"**If your cluster has encryption enabled and is still running Swift under "
"Python 2**, we recommend upgrading Swift *before* transitioning to Python 3. "
"Otherwise, new writes to objects with non-ASCII characters in their paths "
"may result in corrupted downloads when read from a proxy-server still "
"running old swift on Python 2. See `bug 1888037 <https://bugs.launchpad.net/"
"swift/+bug/1888037>`__ for more information."
msgstr ""
"**If your cluster has encryption enabled and is still running Swift under "
"Python 2**, we recommend upgrading Swift *before* transitioning to Python 3. "
"Otherwise, new writes to objects with non-ASCII characters in their paths "
"may result in corrupted downloads when read from a proxy-server still "
"running old swift on Python 2. See `bug 1888037 <https://bugs.launchpad.net/"
"swift/+bug/1888037>`__ for more information."

msgid ""
"**If your cluster has encryption enabled and is still running Swift under "
"Python 2**, we recommend upgrading Swift *before* transitioning to Python 3. "
"Otherwise, new writes to objects with non-ASCII characters in their paths "
"may result in corrupted downloads when read from a proxy-server still "
"running old swift on Python 2. See `bug 1888037 <https://bugs.launchpad.net/"
"swift/+bug/1888037>`__ for more information. Note that new tags including a "
"fix for the bug are planned for all maintained stable branches; upgrading to "
"any one of those should be sufficient to ensure a smooth upgrade to the "
"latest Swift."
msgstr ""
"**If your cluster has encryption enabled and is still running Swift under "
"Python 2**, we recommend upgrading Swift *before* transitioning to Python 3. "
"Otherwise, new writes to objects with non-ASCII characters in their paths "
"may result in corrupted downloads when read from a proxy-server still "
"running old swift on Python 2. See `bug 1888037 <https://bugs.launchpad.net/"
"swift/+bug/1888037>`__ for more information. Note that new tags including a "
"fix for the bug are planned for all maintained stable branches; upgrading to "
"any one of those should be sufficient to ensure a smooth upgrade to the "
"latest Swift."

msgid ""
"**If your cluster is configured with a separate replication network**, note "
"that background daemons will switch to using this network for all traffic. "
"If your account, container, or object replication servers are configured "
"with ``replication_server = true``, these daemons may log a flood of ``405 "
"Method Not Allowed`` messages during a rolling upgrade. To avoid this, "
"comment out the option and restart replication servers before upgrading."
msgstr ""
"**If your cluster is configured with a separate replication network**, note "
"that background daemons will switch to using this network for all traffic. "
"If your account, container, or object replication servers are configured "
"with ``replication_server = true``, these daemons may log a flood of ``405 "
"Method Not Allowed`` messages during a rolling upgrade. To avoid this, "
"comment out the option and restart replication servers before upgrading."

msgid "0 for success"
msgstr "0 for success"

msgid "1 for an unexpected outcome"
msgstr "1 for an unexpected outcome"

msgid "2 for invalid options"
msgstr "2 for invalid options"

msgid "2.10.0"
msgstr "2.10.0"

msgid "2.10.1"
msgstr "2.10.1"

msgid "2.10.2"
msgstr "2.10.2"

msgid "2.11.0"
msgstr "2.11.0"

msgid "2.12.0"
msgstr "2.12.0"

msgid "2.13.0"
msgstr "2.13.0"

msgid "2.13.1"
msgstr "2.13.1"

msgid "2.13.1-12"
msgstr "2.13.1-12"

msgid "2.14.0"
msgstr "2.14.0"

msgid "2.15.0"
msgstr "2.15.0"

msgid "2.15.1"
msgstr "2.15.1"

msgid "2.15.2"
msgstr "2.15.2"

msgid "2.16.0"
msgstr "2.16.0"

msgid "2.17.0"
msgstr "2.17.0"

msgid "2.17.1"
msgstr "2.17.1"

msgid "2.18.0"
msgstr "2.18.0"

msgid "2.19.0"
msgstr "2.19.0"

msgid "2.19.1"
msgstr "2.19.1"

msgid "2.19.2"
msgstr "2.19.2"

msgid "2.20.0"
msgstr "2.20.0"

msgid "2.21.0"
msgstr "2.21.0"

msgid "2.21.1"
msgstr "2.21.1"

msgid "2.22.0"
msgstr "2.22.0"

msgid "2.23.0"
msgstr "2.23.0"

msgid "2.23.1"
msgstr "2.23.1"

msgid "2.23.2"
msgstr "2.23.2"

msgid "2.23.3"
msgstr "2.23.3"

msgid "2.24.0"
msgstr "2.24.0"

msgid "2.25.0"
msgstr "2.25.0"

msgid "2.25.1"
msgstr "2.25.1"

msgid "2.26.0"
msgstr "2.26.0"

msgid "2.27.0"
msgstr "2.27.0"

msgid "2.28.0"
msgstr "2.28.0"

msgid "2.29.0"
msgstr "2.29.0"

msgid "2.29.1"
msgstr "2.29.1"

msgid "2.30.0"
msgstr "2.30.0"

msgid "3 for user exit"
msgstr "3 for user exit"

msgid ""
"A 'compact' command has been added to ``swift-manage-shard-ranges`` that "
"enables sequences of contiguous shards with low object counts to be "
"compacted into another existing shard, or into the root container."
msgstr ""
"A 'compact' command has been added to ``swift-manage-shard-ranges`` that "
"enables sequences of contiguous shards with low object counts to be "
"compacted into another existing shard, or into the root container."

msgid ""
"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."
msgstr ""
"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."

msgid ""
"A ``--no-auto-shard`` option has been added to ``swift-container-sharder``."
msgstr ""
"A ``--no-auto-shard`` option has been added to ``swift-container-sharder``."

msgid ""
"A comparable group, ``.reseller_reader``, is now available for development "
"purposes when authenticating using tempauth."
msgstr ""
"A comparable group, ``.reseller_reader``, is now available for development "
"purposes when authenticating using tempauth."

msgid ""
"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."
msgstr ""
"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."

msgid ""
"A new ``item_size_warning_threshold`` option may be used to monitor for "
"values that are approaching the limit of what can be stored in memcache. See "
"the memcache sample config for more information."
msgstr ""
"A new ``item_size_warning_threshold`` option may be used to monitor for "
"values that are approaching the limit of what can be stored in memcache. See "
"the memcache sample config for more information."

msgid "ACLs now work with unicode in user/account names."
msgstr "ACLs now work with Unicode in user/account names."

msgid ""
"Accept a trade off of dispersion for balance in the ring builder that will "
"result in getting to balanced rings much more quickly in some cases."
msgstr ""
"Accept a trade off of dispersion for balance in the ring builder that will "
"result in getting to balanced rings much more quickly in some cases."

msgid ""
"Account and container databases will now be quarantined if the database "
"schema has been corrupted."
msgstr ""
"Account and container databases will now be quarantined if the database "
"schema has been corrupted."

msgid ""
"Account and container replication stats logs now include ``remote_merges``, "
"the number of times a whole database was sent to another node."
msgstr ""
"Account and container replication stats logs now include ``remote_merges``, "
"the number of times a whole database was sent to another node."

msgid ""
"Account and container replicators can now be configured with a "
"``handoff_delete`` option, similar to object replicators and reconstructors. "
"See the sample config for more information."
msgstr ""
"Account and container replicators can now be configured with a "
"``handoff_delete`` option, similar to object replicators and reconstructors. "
"See the sample config for more information."

msgid "Account quotas are now enforced even on empty accounts."
msgstr "Account quotas are now enforced even on empty accounts."

msgid "Add Composite Ring Functionality"
msgstr "Add Composite Ring Functionality"

msgid "Add Vary headers for CORS responses."
msgstr "Add Vary headers for CORS responses."

msgid ""
"Add ``databases_per_second`` to the account-replicator, container-"
"replicator, and container-sharder. This prevents them from using a full CPU "
"core when they are not IO limited."
msgstr ""
"Add ``databases_per_second`` to the account-replicator, container-"
"replicator, and container-sharder. This prevents them from using a full CPU "
"core when they are not IO limited."

msgid ""
"Add a ``--drop-prefixes`` flag to swift-account-info, swift-container-info, "
"and swift-object-info. This makes the output between the three more "
"consistent."
msgstr ""
"Add a ``--drop-prefixes`` flag to swift-account-info, swift-container-info, "
"and swift-object-info. This makes the output between the three more "
"consistent."

msgid ""
"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."
msgstr ""
"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."

msgid ""
"Add a new ``concurrent_ec_extra_requests`` option to allow the proxy to make "
"some extra backend requests immediately. The proxy will respond as soon as "
"there are enough responses available to reconstruct."
msgstr ""
"Add a new ``concurrent_ec_extra_requests`` option to allow the proxy to make "
"some extra backend requests immediately. The proxy will respond as soon as "
"there are enough responses available to reconstruct."

msgid ""
"Add basic read support for object tagging. This improves compatibility with "
"AWS CLI version 2. Write support is not yet implemented, so the tag set will "
"always be empty."
msgstr ""
"Add basic read support for object tagging. This improves compatibility with "
"AWS CLI version 2. Write support is not yet implemented, so the tag set will "
"always be empty."

msgid ""
"Add basic support for ?versions bucket listings. We still do not have "
"support for toggling S3 bucket versioning, but we can at least support "
"getting the latest versions of all objects."
msgstr ""
"Add basic support for ?versions bucket listings. We still do not have "
"support for toggling S3 bucket versioning, but we can at least support "
"getting the latest versions of all objects."

msgid "Add checksum to object extended attributes."
msgstr "Add checksum to object extended attributes."

msgid ""
"Add fallocate_reserve to account and container servers. This allows disks "
"shared between account/container and object rings to avoid getting 100% "
"full. The default value of 1% matches the existing default on object servers."
msgstr ""
"Add fallocate_reserve to account and container servers. This allows disks "
"shared between account/container and object rings to avoid getting 100% "
"full. The default value of 1% matches the existing default on object servers."

msgid "Add root containers with compactible ranges to recon cache."
msgstr "Add root containers with compatible ranges to recon cache."

msgid ""
"Add slo_manifest_hook callback to allow other middlewares to impose "
"additional constraints on or make edits to SLO manifests before being "
"written. For example, a middleware could enforce minimum segment size or "
"insert data segments."
msgstr ""
"Add slo_manifest_hook callback to allow other middlewares to impose "
"additional constraints on or make edits to SLO manifests before being "
"written. For example, a middleware could enforce minimum segment size or "
"insert data segments."

msgid ""
"Add support for PROXY protocol v1 to the proxy server. This allows the Swift "
"proxy server to log accurate client IP addresses when there is a proxy or "
"SSL-terminator between the client and the Swift proxy server.  Example "
"servers supporting this PROXY protocol include stunnel, haproxy, hitch, and "
"varnish. See the sample proxy server config file for the appropriate config "
"setting to enable or disable this functionality."
msgstr ""
"Add support for PROXY protocol v1 to the proxy server. This allows the Swift "
"proxy server to log accurate client IP addresses when there is a proxy or "
"SSL-terminator between the client and the Swift proxy server.  Example "
"servers supporting this PROXY protocol include stunnel, HAProxy, hitch, and "
"Varnish. See the sample proxy server config file for the appropriate config "
"setting to enable or disable this functionality."

msgid ""
"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."
msgstr ""
"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."

msgid ""
"Add support to increase object ring partition power transparently to end "
"users and with no cluster downtime. Increasing the ring part power allows "
"for incremental adjustment to the upper bound of the cluster size. Please "
"review the `full docs <https://docs.openstack.org/swift/latest/"
"ring_partpower.html>`__ for more information."
msgstr ""
"Add support to increase object ring partition power transparently to end "
"users and with no cluster downtime. Increasing the ring part power allows "
"for incremental adjustment to the upper bound of the cluster size. Please "
"review the `full docs <https://docs.openstack.org/swift/latest/"
"ring_partpower.html>`__ for more information."

msgid ""
"Added \"audit watcher\" hooks to allow operators to run arbitrary code "
"against every diskfile in a cluster. For more information, see `the "
"documentation <https://docs.openstack.org/swift/latest/development_watchers."
"html>`__."
msgstr ""
"Added \"audit watcher\" hooks to allow operators to run arbitrary code "
"against every diskfile in a cluster. For more information, see `the "
"documentation <https://docs.openstack.org/swift/latest/development_watchers."
"html>`__."

msgid ""
"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."
msgstr ""
"Added \"emergency mode\" hooks in the account and container replicators. "
"These options may be used to prioritise moving handoff partitions to primary "
"locations more quickly. This helps when adding capacity to a ring."

msgid ""
"Added \"static symlinks\", which perform some validation as they follow "
"redirects and include more information about their target in container "
"listings. For more information, see the `symlink middleware <https://docs."
"openstack.org/swift/latest/middleware.html#symlink>`__ section of the "
"documentation."
msgstr ""
"Added \"static symlinks\", which perform some validation as they follow "
"redirects and include more information about their target in container "
"listings. For more information, see the `symlink middleware <https://docs."
"openstack.org/swift/latest/middleware.html#symlink>`__ section of the "
"documentation."

msgid ""
"Added ``--swift-versions`` to ``swift-recon`` CLI to compare installed "
"versions in the cluster."
msgstr ""
"Added ``--swift-versions`` to ``swift-recon`` CLI to compare installed "
"versions in the cluster."

msgid "Added ``-d <devs>`` and ``-p <partitions>`` command line options."
msgstr "Added ``-d <devs>`` and ``-p <partitions>`` command line options."

msgid "Added ``tasks_per_second`` option to rate-limit the object-expirer."
msgstr "Added ``tasks_per_second`` option to rate-limit the object-expirer."

msgid ""
"Added ``ttfb`` (Time to First Byte) and ``pid`` (Process ID) to the set of "
"available proxy-server log fields. For more information, see `the "
"documentation <https://docs.openstack.org/swift/latest/logs.html>`__."
msgstr ""
"Added ``ttfb`` (Time to First Byte) and ``pid`` (Process ID) to the set of "
"available proxy-server log fields. For more information, see `the "
"documentation <https://docs.openstack.org/swift/latest/logs.html>`__."

msgid ""
"Added ``usedforsecurity`` annotations for use on FIPS-compliant systems."
msgstr ""
"Added ``usedforsecurity`` annotations for use on FIPS-compliant systems."

msgid ""
"Added a \"user\" option to the drive-audit config file. Its value is used to "
"set the owner of the drive-audit recon cache."
msgstr ""
"Added a \"user\" option to the drive-audit config file. Its value is used to "
"set the owner of the drive-audit recon cache."

msgid "Added a ``--dry-run`` option for the 'compact' command."
msgstr "Added a ``--dry-run`` option for the 'compact' command."

msgid ""
"Added a ``--includes`` option for the 'show' command to only output shard "
"ranges that may include a given object name."
msgstr ""
"Added a ``--includes`` option for the 'show' command to only output shard "
"ranges that may include a given object name."

msgid ""
"Added a ``keep_idle`` config option to configure KEEPIDLE time for TCP "
"sockets. The default value is the old constant of 600."
msgstr ""
"Added a ``keep_idle`` config option to configure KEEPIDLE time for TCP "
"sockets. The default value is the old constant of 600."

msgid ""
"Added a ``log_rsync_transfers`` option to the object-replicator. Set it to "
"false to disable logging rsync \"send\" lines; during large rebalances, such "
"logging can overwhelm log aggregation while providing little useful "
"information."
msgstr ""
"Added a ``log_rsync_transfers`` option to the object-replicator. Set it to "
"false to disable logging rsync \"send\" lines; during large rebalances, such "
"logging can overwhelm log aggregation while providing little useful "
"information."

msgid ""
"Added a ``ring_ip`` option for various object services. This may be used to "
"find own devices in the ring in a containerized environment where the "
"``bind_ip`` may not appear in the ring at all."
msgstr ""
"Added a ``ring_ip`` option for various object services. This may be used to "
"find own devices in the ring in a containerised environment where the "
"``bind_ip`` may not appear in the ring at all."

msgid ""
"Added a configurable URL base to staticweb, fixing issues when the "
"accessible endpoint isn't known to the Swift cluster (eg http vs https)."
msgstr ""
"Added a configurable URL base to staticweb, fixing issues when the "
"accessible endpoint isn't known to the Swift cluster (eg http vs https)."

msgid "Added a configurable URL base to staticweb."
msgstr "Added a configurable URL base to staticweb."

msgid ""
"Added a delay before deleting non-durable data. A new configuration option, "
"``commit_window`` in the ``[DEFAULT]`` section of object-server.conf, "
"adjusts this delay; the default is 60 seconds. This improves the durability "
"of both back-dated PUTs (from the reconciler or container-sync, for example) "
"and fresh writes to handoffs by preventing the reconstructor from deleting "
"data that the object-server was still writing."
msgstr ""
"Added a delay before deleting non-durable data. A new configuration option, "
"``commit_window`` in the ``[DEFAULT]`` section of object-server.conf, "
"adjusts this delay; the default is 60 seconds. This improves the durability "
"of both back-dated PUTs (from the reconciler or container-sync, for example) "
"and fresh writes to handoffs by preventing the reconstructor from deleting "
"data that the object-server was still writing."

msgid "Added a handoffs-only mode."
msgstr "Added a handoffs-only mode."

msgid ""
"Added a new 'analyze' command to automatically identify overlapping shard "
"ranges and recommend a resolution based on a JSON listing of shard ranges "
"such as produced by the 'show' command."
msgstr ""
"Added a new 'analyze' command to automatically identify overlapping shard "
"ranges and recommend a resolution based on a JSON listing of shard ranges "
"such as produced by the 'show' command."

msgid ""
"Added a new 'repair' command to automatically identify and optionally "
"resolve overlapping shard ranges."
msgstr ""
"Added a new 'repair' command to automatically identify and optionally "
"resolve overlapping shard ranges."

msgid ""
"Added a new ``swift.common.registry`` module. This includes helper functions "
"``register_sensitive_header`` and ``register_sensitive_param`` which third "
"party middleware authors may use to flag headers and query parameters for "
"redaction when logging. For more information, see `the documentation "
"<https://docs.openstack.org/swift/latest/misc.html# module-swift.common."
"registry>`__."
msgstr ""
"Added a new ``swift.common.registry`` module. This includes helper functions "
"``register_sensitive_header`` and ``register_sensitive_param`` which third "
"party middleware authors may use to flag headers and query parameters for "
"redaction when logging. For more information, see `the documentation "
"<https://docs.openstack.org/swift/latest/misc.html# module-swift.common."
"registry>`__."

msgid ""
"Added a new config option, ``minimum_shard_size``. When scanning for shard "
"ranges, if the final shard would otherwise contain fewer than this many "
"objects, the previous shard will instead be expanded to the end of the "
"namespace (and so may contain up to ``rows_per_shard + minimum_shard_size`` "
"objects). This reduces the number of small shards generated. The default "
"value is ``rows_per_shard / 5``."
msgstr ""
"Added a new config option, ``minimum_shard_size``. When scanning for shard "
"ranges, if the final shard would otherwise contain fewer than this many "
"objects, the previous shard will instead be expanded to the end of the "
"namespace (and so may contain up to ``rows_per_shard + minimum_shard_size`` "
"objects). This reduces the number of small shards generated. The default "
"value is ``rows_per_shard / 5``."

msgid ""
"Added a new config option, ``rows_per_shard``, to specify how many objects "
"should be in each shard when scanning for ranges. The default is "
"``shard_container_threshold / 2``, preserving existing behavior."
msgstr ""
"Added a new config option, ``rows_per_shard``, to specify how many objects "
"should be in each shard when scanning for ranges. The default is "
"``shard_container_threshold / 2``, preserving existing behaviour."

msgid ""
"Added a new config option, ``shrink_threshold``, to specify the absolute "
"size below which a shard will be considered for shrinking. This overrides "
"the ``shard_shrink_point`` configuration option, which expressed this as a "
"percentage of ``shard_container_threshold``. ``shard_shrink_point`` is now "
"deprecated."
msgstr ""
"Added a new config option, ``shrink_threshold``, to specify the absolute "
"size below which a shard will be considered for shrinking. This overrides "
"the ``shard_shrink_point`` configuration option, which expressed this as a "
"percentage of ``shard_container_threshold``. ``shard_shrink_point`` is now "
"deprecated."

msgid ""
"Added a new middleware that allows users and operators to configure accounts "
"and containers to use RFC-compliant (i.e., double-quoted) ETags. This may be "
"useful when using Swift as an origin for some content delivery networks. For "
"more information, see `the middleware documentation <https://docs.openstack."
"org/swift/latest/middleware.html#etag-quoter>`__."
msgstr ""
"Added a new middleware that allows users and operators to configure accounts "
"and containers to use RFC-compliant (i.e., double-quoted) ETags. This may be "
"useful when using Swift as an origin for some content delivery networks. For "
"more information, see `the middleware documentation <https://docs.openstack."
"org/swift/latest/middleware.html#etag-quoter>`__."

msgid ""
"Added a new middleware to allow accounts and containers to opt-in to RFC-"
"compliant ETags. For more information, see `the documentation <https://docs."
"openstack.org/swift/latest/middleware.html#module-swift.common.middleware."
"etag_quoter>`__. Clients should be aware of the fact that ETags may be "
"quoted for RFC compliance; this may become the default behavior in some "
"future release."
msgstr ""
"Added a new middleware to allow accounts and containers to opt-in to RFC-"
"compliant ETags. For more information, see `the documentation <https://docs."
"openstack.org/swift/latest/middleware.html#module-swift.common.middleware."
"etag_quoter>`__. Clients should be aware of the fact that ETags may be "
"quoted for RFC compliance; this may become the default behaviour in some "
"future release."

msgid ""
"Added a new object versioning mode, with APIs for querying and accessing old "
"versions. For more information, see `the documentation <https://docs."
"openstack.org/swift/latest/middleware.html#module-swift.common.middleware."
"versioned_writes.object_versioning>`__."
msgstr ""
"Added a new object versioning mode, with APIs for querying and accessing old "
"versions. For more information, see `the documentation <https://docs."
"openstack.org/swift/latest/middleware.html#module-swift.common.middleware."
"versioned_writes.object_versioning>`__."

msgid ""
"Added a new optional proxy-logging field ``{wire_status_int}`` for the "
"status code returned to the client. For more information, see `the "
"documentation <https://docs.openstack.org/swift/latest/logs.html#proxy-"
"logs>`__."
msgstr ""
"Added a new optional proxy-logging field ``{wire_status_int}`` for the "
"status code returned to the client. For more information, see `the "
"documentation <https://docs.openstack.org/swift/latest/logs.html#proxy-"
"logs>`__."

msgid ""
"Added an experimental ``swift-ring-composer`` CLI tool to build composite "
"rings."
msgstr ""
"Added an experimental ``swift-ring-composer`` CLI tool to build composite "
"rings."

msgid ""
"Added an operator tool, ``swift-container-deleter``, to asynchronously "
"delete some or all objects in a container using the object expirers."
msgstr ""
"Added an operator tool, ``swift-container-deleter``, to asynchronously "
"delete some or all objects in a container using the object expirers."

msgid "Added an option to drop privileges when running the relinker as root."
msgstr "Added an option to drop privileges when running the relinker as root."

msgid ""
"Added an option to rate-limit how quickly data files are relinked or cleaned "
"up. This may be used to reduce I/O load during partition power increases, "
"improving end-user performance."
msgstr ""
"Added an option to rate-limit how quickly data files are relinked or cleaned "
"up. This may be used to reduce I/O load during partition power increases, "
"improving end-user performance."

msgid ""
"Added an option to write EC fragments with legacy CRC to ensure a smooth "
"upgrade from liberasurecode<=1.5.0 to >=1.6.2. For more information, see "
"`bug 1886088 <https://bugs.launchpad.net/liberasurecode/+bug/1886088>`__."
msgstr ""
"Added an option to write EC fragments with legacy CRC to ensure a smooth "
"upgrade from liberasurecode<=1.5.0 to >=1.6.2. For more information, see "
"`bug 1886088 <https://bugs.launchpad.net/liberasurecode/+bug/1886088>`__."

msgid ""
"Added an option, ``ratelimit_as_client_error``, to return 429s for rate-"
"limited responses. Several clients/SDKs have seem to support retries with "
"backoffs on 429, and having it as a client error cleans up logging and "
"metrics. By default, Swift will respond 503, matching AWS documentation."
msgstr ""
"Added an option, ``ratelimit_as_client_error``, to return 429s for rate-"
"limited responses. Several clients/SDKs have seem to support retries with "
"backoffs on 429, and having it as a client error cleans up logging and "
"metrics. By default, Swift will respond 503, matching AWS documentation."

msgid ""
"Added an optional ``read_only`` middleware to make an entire cluster or "
"individual accounts read only."
msgstr ""
"Added an optional ``read_only`` middleware to make an entire cluster or "
"individual accounts read only."

msgid ""
"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"
msgstr ""
"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"

msgid "Added container/object listing with prefix to InternalClient."
msgstr "Added container/object listing with prefix to InternalClient."

msgid ""
"Added metrics to the formpost and tempurl middlewares to monitor digest "
"usage in signatures."
msgstr ""
"Added metrics to the formpost and tempurl middlewares to monitor digest "
"usage in signatures."

msgid "Added object-reconstructor stats to recon."
msgstr "Added object-reconstructor stats to recon."

msgid "Added stats for shard range cache hits, misses, and skips."
msgstr "Added stats for shard range cache hits, misses, and skips."

msgid "Added support for Python 3.8."
msgstr "Added support for Python 3.8."

msgid "Added support for Python 3.9."
msgstr "Added support for Python 3.9."

msgid "Added support for S3 versioning using the above new mode."
msgstr "Added support for S3 versioning using the above new mode."

msgid "Added support for inline data segments in SLO manifests."
msgstr "Added support for inline data segments in SLO manifests."

msgid ""
"Added support for per-policy proxy config options. This allows per-policy "
"affinity options to be set for use with duplicated EC policies and composite "
"rings. Certain options found in per-policy conf sections will override their "
"equivalents that may be set in the [app:proxy-server] section. Currently the "
"options handled that way are ``sorting_method``, ``read_affinity``, "
"``write_affinity``, ``write_affinity_node_count``, and "
"``write_affinity_handoff_delete_count``."
msgstr ""
"Added support for per-policy proxy config options. This allows per-policy "
"affinity options to be set for use with duplicated EC policies and composite "
"rings. Certain options found in per-policy conf sections will override their "
"equivalents that may be set in the [app:proxy-server] section. Currently the "
"options handled that way are ``sorting_method``, ``read_affinity``, "
"``write_affinity``, ``write_affinity_node_count``, and "
"``write_affinity_handoff_delete_count``."

msgid ""
"Added support for retrieving the encryption root secret from an external key "
"management system. In practice, this is currently limited to Barbican."
msgstr ""
"Added support for retrieving the encryption root secret from an external key "
"management system. In practice, this is currently limited to Barbican."

msgid ""
"Added support for system-scoped \"reader\" roles when authenticating using "
"Keystone. Operators may configure this using the ``system_reader_roles`` "
"option in the ``[filter:keystoneauth]`` section of their proxy-server.conf."
msgstr ""
"Added support for system-scoped \"reader\" roles when authenticating using "
"Keystone. Operators may configure this using the ``system_reader_roles`` "
"option in the ``[filter:keystoneauth]`` section of their proxy-server.conf."

msgid "Added symlink objects support."
msgstr "Added symlink objects support."

msgid ""
"Added the ability to configure a chance to skip checking memcache when "
"querying shard ranges. This allows some fraction of traffic to go to disk "
"and refresh memcache before the key ages out. Recommended values for the new "
"``container_updating_shard_ranges_skip_cache_pct`` and "
"``container_listing_shard_ranges_skip_cache_pct`` options are in the range "
"of 0.0 to 0.1."
msgstr ""
"Added the ability to configure a chance to skip checking Memcache when "
"querying shard ranges. This allows some fraction of traffic to go to disk "
"and refresh Memcache before the key ages out. Recommended values for the new "
"``container_updating_shard_ranges_skip_cache_pct`` and "
"``container_listing_shard_ranges_skip_cache_pct`` options are in the range "
"of 0.0 to 0.1."

msgid "Added the ability to configure auth region in s3token middleware."
msgstr "Added the ability to configure auth region in s3token middleware."

msgid ""
"Added the ability to configure project-scope read-only roles for "
"keystoneauth using the new ``project_reader_roles`` option."
msgstr ""
"Added the ability to configure project-scope read-only roles for "
"keystoneauth using the new ``project_reader_roles`` option."

msgid ""
"Added the ability to connect to memcached over TLS. See the ``tls_*`` "
"options in etc/memcache.conf-sample"
msgstr ""
"Added the ability to connect to Memcached over TLS. See the ``tls_*`` "
"options in etc/memcache.conf-sample"

msgid ""
"Added the ability to read options from object-server.conf, similar to "
"background daemons."
msgstr ""
"Added the ability to read options from object-server.conf, similar to "
"background daemons."

msgid "Added timing stats by response code."
msgstr "Added timing stats by response code."

msgid "After upgrading, re-enable and restart the object-reconstructor."
msgstr "After upgrading, re-enable and restart the object-reconstructor."

msgid ""
"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."
msgstr ""
"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."

msgid ""
"All background daemons now use the replication network. This allows better "
"isolation between external, client-facing traffic and internal, background "
"traffic. Note that during a rolling upgrade, replication servers may respond "
"with ``405 Method Not Allowed``. To avoid this, operators should remove the "
"config option ``replication_server = true`` from their replication servers; "
"this will allow them to handle all request methods before upgrading."
msgstr ""
"All background daemons now use the replication network. This allows better "
"isolation between external, client-facing traffic and internal, background "
"traffic. Note that during a rolling upgrade, replication servers may respond "
"with ``405 Method Not Allowed``. To avoid this, operators should remove the "
"config option ``replication_server = true`` from their replication servers; "
"this will allow them to handle all request methods before upgrading."

msgid "Allow ``fallocate_reserve`` to be specified as a percentage."
msgstr "Allow ``fallocate_reserve`` to be specified as a percentage."

msgid "Allow direct_client users to overwrite the ``X-Timestamp`` header."
msgstr "Allow direct_client users to overwrite the ``X-Timestamp`` header."

msgid ""
"Allow operators to pass either raw or URL-quoted paths to ``swift-get-"
"nodes``. Notably, this allows ``swift-get-nodes`` to work with the reserved "
"namespace used for object versioning."
msgstr ""
"Allow operators to pass either raw or URL-quoted paths to ``swift-get-"
"nodes``. Notably, this allows ``swift-get-nodes`` to work with the reserved "
"namespace used for object versioning."

msgid "Allow proxy-logging middlewares to be configured more independently."
msgstr "Allow proxy-logging middlewares to be configured more independently."

msgid ""
"Allow ratelimit to be placed multiple times in a proxy pipeline, such as "
"both before s3api and auth (to handle swift requests without needing to make "
"an auth decision) and after (to limit S3 requests)."
msgstr ""
"Allow ratelimit to be placed multiple times in a proxy pipeline, such as "
"both before s3api and auth (to handle swift requests without needing to make "
"an auth decision) and after (to limit S3 requests)."

msgid "Allow the expirer to gracefully move past updating stale work items."
msgstr "Allow the expirer to gracefully move past updating stale work items."

msgid "Always set Swift processes to use UTC."
msgstr "Always set Swift processes to use UTC."

msgid ""
"As a result, some errors that previously resulted in exit code 2 will now "
"exit with code 1."
msgstr ""
"As a result, some errors that previously resulted in exit code 2 will now "
"exit with code 1."

msgid ""
"Avoid upgrading liberasurecode until swift and liberasurecode better-support "
"a rolling upgrade. Swift remains compatible with liberasurecode 1.5.0 and "
"earlier."
msgstr ""
"Avoid upgrading liberasurecode until swift and liberasurecode better-support "
"a rolling upgrade. Swift remains compatible with liberasurecode 1.5.0 and "
"earlier."

msgid "Background corruption-detection improvements"
msgstr "Background corruption-detection improvements"

msgid "Bug Fixes"
msgstr "Bug Fixes"

msgid "COPY now works with unicode account names."
msgstr "COPY now works with Unicode account names."

msgid "Cache all answers from nameservers in cname_lookup."
msgstr "Cache all answers from nameservers in cname_lookup."

msgid ""
"Certain S3 API headers are now lower case as they would be coming from AWS."
msgstr ""
"Certain S3 API headers are now lower case as they would be coming from AWS."

msgid ""
"Change the behavior of the EC reconstructor to perform a fragment rebuild to "
"a handoff node when a primary peer responds with 507 to the REPLICATE "
"request. This changes EC to match the existing behavior of replication when "
"drives fail. After a rebalance of EC rings (potentially removing unmounted/"
"failed devices), it's most IO efficient to run in handoffs_only mode to "
"avoid unnecessary rebuilds."
msgstr ""
"Change the behaviour of the EC reconstructor to perform a fragment rebuild "
"to a handoff node when a primary peer responds with 507 to the REPLICATE "
"request. This changes EC to match the existing behaviour of replication when "
"drives fail. After a rebalance of EC rings (potentially removing unmounted/"
"failed devices), it's most IO efficient to run in handoffs_only mode to "
"avoid unnecessary rebuilds."

msgid ""
"Changed where liberasurecode-devel for CentOS 7 is referenced and installed "
"as a dependency."
msgstr ""
"Changed where liberasurecode-devel for CentOS 7 is referenced and installed "
"as a dependency."

msgid "Cleaned up logged tracebacks when talking to memcached servers."
msgstr "Cleaned up logged tracebacks when talking to memcached servers."

msgid ""
"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."
msgstr ""
"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 finalising 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."

msgid ""
"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."
msgstr ""
"Closed a bug where sync 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 finalising the write. Also, erasure coded "
"fragment metadata will now be validated when read and, if bad data is found, "
"the fragment will be quarantined."

msgid "CompleteMultipartUpload requests may now be safely retried."
msgstr "CompleteMultipartUpload requests may now be safely retried."

msgid "CompleteMultipartUpload requests with a ``Content-MD5`` now work."
msgstr "CompleteMultipartUpload requests with a ``Content-MD5`` now work."

msgid ""
"Composite rings can be used for explicit replica placement and \"replicated "
"EC\" for global erasure codes policies."
msgstr ""
"Composite rings can be used for explicit replica placement and \"replicated "
"EC\" for global erasure codes policies."

msgid ""
"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."
msgstr ""
"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."

msgid ""
"Container metadata related to sharding are now removed when no longer needed."
msgstr ""
"Container metadata related to sharding are now removed when no longer needed."

msgid ""
"Container read ACLs now work with object versioning. This only allows access "
"to the most-recent version via an unversioned URL."
msgstr ""
"Container read ACLs now work with object versioning. This only allows access "
"to the most-recent version via an unversioned URL."

msgid ""
"Container sync can now copy SLOs more efficiently by allowing the manifest "
"to be synced before all of the referenced segments. This fixes a bug where "
"container sync would not copy SLO manifests."
msgstr ""
"Container sync can now copy SLOs more efficiently by allowing the manifest "
"to be synced before all of the referenced segments. This fixes a bug where "
"container sync would not copy SLO manifests."

msgid ""
"Container sync now synchronizes static symlinks in a way similar to static "
"large objects."
msgstr ""
"Container sync now synchronizes static symlinks in a way similar to static "
"large objects."

msgid "Correctly handle deleted files with if-none-match requests."
msgstr "Correctly handle deleted files with if-none-match requests."

msgid ""
"Correctly send 412 Precondition Failed if a user sends an invalid copy "
"destination. Previously Swift would send a 500 Internal Server Error."
msgstr ""
"Correctly send 412 Precondition Failed if a user sends an invalid copy "
"destination. Previously Swift would send a 500 Internal Server Error."

msgid "Correctness improvements"
msgstr "Correctness improvements"

msgid "Critical Issues"
msgstr "Critical Issues"

msgid ""
"Cross-account symlinks now store correct account information in container "
"listings. This was previously fixed in 2.22.0."
msgstr ""
"Cross-account symlinks now store correct account information in container "
"listings. This was previously fixed in 2.22.0."

msgid "Current (Unreleased) Release Notes"
msgstr "Current (Unreleased) Release Notes"

msgid ""
"Currently the default is still only one process, and no workers. Set "
"``reconstructor_workers`` in the ``[object-reconstructor]`` section to some "
"whole number <= the number of devices on a node to get that many "
"reconstructor workers."
msgstr ""
"Currently the default is still only one process, and no workers. Set "
"``reconstructor_workers`` in the ``[object-reconstructor]`` section to some "
"whole number <= the number of devices on a node to get that many "
"reconstructor workers."

msgid "Daemons using InternalClient can now be properly killed with SIGTERM."
msgstr "Daemons using InternalClient can now be properly killed with SIGTERM."

msgid "Data encryption updates"
msgstr "Data encryption updates"

msgid ""
"Deleted shard containers are no longer considered root containers. This "
"prevents unnecessary sharding audit failures and allows the deleted shard "
"database to actually be unlinked."
msgstr ""
"Deleted shard containers are no longer considered root containers. This "
"prevents unnecessary sharding audit failures and allows the deleted shard "
"database to actually be unlinked."

msgid ""
"Deleting an expiring object will now cause less work in the system. The "
"number of async pending files written has been reduced for all objects and "
"greatly reduced for erasure-coded objects. This dramatically reduces the "
"burden on container servers."
msgstr ""
"Deleting an expiring object will now cause less work in the system. The "
"number of async pending files written has been reduced for all objects and "
"greatly reduced for erasure-coded objects. This dramatically reduces the "
"burden on container servers."

msgid ""
"Deployers with clusters that relied on the old implicit default location of "
"\"US\" should explicitly set ``location = US`` in the ``[filter:s3api]`` "
"section of proxy-server.conf before upgrading."
msgstr ""
"Deployers with clusters that relied on the old implicit default location of "
"\"US\" should explicitly set ``location = US`` in the ``[filter:s3api]`` "
"section of proxy-server.conf before upgrading."

msgid ""
"Deprecate swift-temp-url and call python-swiftclient's implementation "
"instead. This adds python-swiftclient as an optional dependency of Swift."
msgstr ""
"Deprecate swift-temp-url and call python-swiftclient's implementation "
"instead. This adds python-swiftclient as an optional dependency of Swift."

msgid "Deprecation Notes"
msgstr "Deprecation Notes"

msgid "Detect and remove invalid entries from ``hashes.pkl``"
msgstr "Detect and remove invalid entries from ``hashes.pkl``"

msgid ""
"Device region and zone can now be changed via ``swift-ring-builder``. Note "
"that this may cause a lot of data movement on the next rebalance as the "
"builder tries to reach full dispersion."
msgstr ""
"Device region and zone can now be changed via ``swift-ring-builder``. Note "
"that this may cause a lot of data movement on the next rebalance as the "
"builder tries to reach full dispersion."

msgid "Disallow X-Delete-At header values equal to the X-Timestamp header."
msgstr "Disallow X-Delete-At header values equal to the X-Timestamp header."

msgid "Display crypto data/metadata details in swift-object-info."
msgstr "Display crypto data/metadata details in swift-object-info."

msgid "Display more info on empty rings."
msgstr "Display more info on empty rings."

msgid "Do not follow CNAME when host is in storage_domain."
msgstr "Do not follow CNAME when host is in storage_domain."

msgid "Don't inject shard ranges when user quits."
msgstr "Don't inject shard ranges when user quits."

msgid "Drop support for auth-server from common/manager.py and `swift-init`."
msgstr "Drop support for auth-server from common/manager.py and `swift-init`."

msgid ""
"During rebalances, clients should no longer get 404s for data that exists "
"but whose replicas are overloaded."
msgstr ""
"During rebalances, clients should no longer get 404s for data that exists "
"but whose replicas are overloaded."

msgid "EC Fragment Duplication - Foundational Global EC Cluster Support."
msgstr "EC Fragment Duplication - Foundational Global EC Cluster Support."

msgid ""
"Empty container databases (such as might be created on handoffs) now shard "
"much more quickly."
msgstr ""
"Empty container databases (such as might be created on handoffs) now shard "
"much more quickly."

msgid ""
"Enable cluster-wide CORS Expose-Headers setting via \"cors_expose_headers\"."
msgstr ""
"Enable cluster-wide CORS Expose-Headers setting via \"cors_expose_headers\"."

msgid "Enabled versioned writes on Dynamic Large Objects (DLOs)."
msgstr "Enabled versioned writes on Dynamic Large Objects (DLOs)."

msgid ""
"Ensure update of the container by object-updater, removing a rare "
"possibility that objects would never be added to a container listing."
msgstr ""
"Ensure update of the container by object-updater, removing a rare "
"possibility that objects would never be added to a container listing."

msgid ""
"Erasure code GET performance has been significantly improved in clusters "
"that are not completely healthy."
msgstr ""
"Erasure code GET performance has been significantly improved in clusters "
"that are not completely healthy."

msgid ""
"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."
msgstr ""
"Erasure code reconstruction handles moving data from hand-off nodes better. "
"Instead of moving the data to another hand-off, it waits until it can be "
"moved to a primary node."

msgid ""
"Erasure-coded storage policies using ``isa_l_rs_vand`` and ``nparity`` >= 5 "
"must be configured as deprecated, preventing any new containers from being "
"created with such a policy. This configuration is known to harm data "
"durability. Any data in such policies should be migrated to a new policy. "
"See See `Launchpad bug 1639691 <https://bugs.launchpad.net/swift/"
"+bug/1639691>`__ for more information."
msgstr ""
"Erasure-coded storage policies using ``isa_l_rs_vand`` and ``nparity`` >= 5 "
"must be configured as deprecated, preventing any new containers from being "
"created with such a policy. This configuration is known to harm data "
"durability. Any data in such policies should be migrated to a new policy. "
"See See `Launchpad bug 1639691 <https://bugs.launchpad.net/swift/"
"+bug/1639691>`__ for more information."

msgid ""
"Errors encountered while validating static symlink targets no longer cause "
"BadResponseLength errors in the proxy-server."
msgstr ""
"Errors encountered while validating static symlink targets no longer cause "
"BadResponseLength errors in the proxy-server."

msgid ""
"Errors encountered while validating static symlink targets no longer cause "
"``BadResponseLength`` errors in the proxy-server."
msgstr ""
"Errors encountered while validating static symlink targets no longer cause "
"``BadResponseLength`` errors in the proxy-server."

msgid ""
"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."
msgstr ""
"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."

msgid ""
"Extend concurrent reads to erasure coded policies. Previously, the options "
"``concurrent_gets`` and ``concurrency_timeout`` only applied to replicated "
"policies."
msgstr ""
"Extend concurrent reads to erasure coded policies. Previously, the options "
"``concurrent_gets`` and ``concurrency_timeout`` only applied to replicated "
"policies."

msgid "Fix SLO delete for accounts with non-ASCII names."
msgstr "Fix SLO delete for accounts with non-ASCII names."

msgid ""
"Fix a proxy-server error when retrieving erasure coded data when there are "
"durable fragments but not enough to reconstruct."
msgstr ""
"Fix a proxy-server error when retrieving erasure coded data when there are "
"durable fragments but not enough to reconstruct."

msgid "Fix an error in the proxy server when finalizing data."
msgstr "Fix an error in the proxy server when finalising data."

msgid ""
"Fixed 500 from cname_lookup middleware. Previously, if the looked-up domain "
"was used by domain_remap to update the request path, the server would "
"respond Internal Error."
msgstr ""
"Fixed 500 from cname_lookup middleware. Previously, if the looked-up domain "
"was used by domain_remap to update the request path, the server would "
"respond Internal Error."

msgid ""
"Fixed UnicodeDecodeError in the object reconstructor that would prevent "
"objects with non-ascii names from being reconstructed and caused the "
"reconstructor process to hang."
msgstr ""
"Fixed UnicodeDecodeError in the object reconstructor that would prevent "
"objects with non-ASCII names from being reconstructed and caused the "
"reconstructor process to hang."

msgid ""
"Fixed XML responses (eg on bulk extractions and SLO upload failures) to be "
"more correct. The enclosing \"delete\" tag was removed where it doesn't make "
"sense and replaced with \"extract\" or \"upload\" depending on the context."
msgstr ""
"Fixed XML responses (e.g. on bulk extractions and SLO upload failures) to be "
"more correct. The enclosing \"delete\" tag was removed where it doesn't make "
"sense and replaced with \"extract\" or \"upload\" depending on the context."

msgid "Fixed ``rsync`` output parsing."
msgstr "Fixed ``rsync`` output parsing."

msgid "Fixed a bug in domain_remap when obj starts/ends with slash."
msgstr "Fixed a bug in domain_remap when obj starts/ends with slash."

msgid ""
"Fixed a bug in how Swift uses eventlet that was exposed under high "
"concurrency."
msgstr ""
"Fixed a bug in how Swift uses eventlet that was exposed under high "
"concurrency."

msgid ""
"Fixed a bug in the EC reconstructor where an unsuccessful sync would cause "
"extra disk I/O load on the remote server. Now the extra checking work is "
"only requested if the sync request was successful."
msgstr ""
"Fixed a bug in the EC reconstructor where an unsuccessful sync would cause "
"extra disk I/O load on the remote server. Now the extra checking work is "
"only requested if the sync request was successful."

msgid ""
"Fixed a bug in the new object versioning API that would cause more than "
"``limit`` results to be returned when listing."
msgstr ""
"Fixed a bug in the new object versioning API that would cause more than "
"``limit`` results to be returned when listing."

msgid ""
"Fixed a bug introduced in 2.15.0 where the object reconstructor would exit "
"with a traceback if no EC policy was configured."
msgstr ""
"Fixed a bug introduced in 2.15.0 where the object reconstructor would exit "
"with a traceback if no EC policy was configured."

msgid "Fixed a bug where SSYNC would fail to replicate unexpired object."
msgstr "Fixed a bug where SSYNC would fail to replicate unexpired object."

msgid ""
"Fixed a bug where a container listing delimiter wouldn't work with "
"encryption."
msgstr ""
"Fixed a bug where a container listing delimiter wouldn't work with "
"encryption."

msgid ""
"Fixed a bug where an SLO download with a range request may have resulted in "
"a 5xx series response."
msgstr ""
"Fixed a bug where an SLO download with a range request may have resulted in "
"a 5xx series response."

msgid ""
"Fixed a bug where encryption would store the incorrect key metadata if the "
"object name starts with a slash."
msgstr ""
"Fixed a bug where encryption would store the incorrect key metadata if the "
"object name starts with a slash."

msgid ""
"Fixed a bug where some headers weren't being copied correctly in a COPY "
"request."
msgstr ""
"Fixed a bug where some headers weren't being copied correctly in a COPY "
"request."

msgid "Fixed a bug where some tombstone files might never be reclaimed."
msgstr "Fixed a bug where some tombstone files might never be reclaimed."

msgid ""
"Fixed a bug where the ring builder would not allow removal of a device when "
"min_part_seconds_left was greater than zero."
msgstr ""
"Fixed a bug where the ring builder would not allow removal of a device when "
"min_part_seconds_left was greater than zero."

msgid ""
"Fixed a bug where zero-byte PUTs would not work properly with \"If-None-"
"Match: \\*\" conditional requests."
msgstr ""
"Fixed a bug where zero-byte PUTs would not work properly with \"If-None-"
"Match: \\*\" conditional requests."

msgid ""
"Fixed a cache invalidation issue related to GET and PUT requests to "
"containers that would occasionally cause object PUTs to a container to 404 "
"after the container had been successfully created."
msgstr ""
"Fixed a cache invalidation issue related to GET and PUT requests to "
"containers that would occasionally cause object PUTs to a container to 404 "
"after the container had been successfully created."

msgid "Fixed a few areas where the ``swiftdir`` option was not respected."
msgstr "Fixed a few areas where the ``swiftdir`` option was not respected."

msgid ""
"Fixed a race condition in updating hashes.pkl where a partition suffix "
"invalidation may have been skipped."
msgstr ""
"Fixed a race condition in updating hashes.pkl where a partition suffix "
"invalidation may have been skipped."

msgid "Fixed a rare infinite loop in `swift-ring-builder` while placing parts."
msgstr ""
"Fixed a rare infinite loop in `swift-ring-builder` while placing parts."

msgid ""
"Fixed a rare issue where multiple backend timeouts could result in bad data "
"being returned to the client."
msgstr ""
"Fixed a rare issue where multiple backend timeouts could result in bad data "
"being returned to the client."

msgid "Fixed a socket leak in copy middleware when a large object was copied."
msgstr "Fixed a socket leak in copy middleware when a large object was copied."

msgid ""
"Fixed an error when reading encrypted data that was written while running "
"Python 2 for a path that includes non-ASCII characters."
msgstr ""
"Fixed an error when reading encrypted data that was written while running "
"Python 2 for a path that includes non-ASCII characters."

msgid ""
"Fixed an issue in COPY where concurrent requests may have copied the wrong "
"data."
msgstr ""
"Fixed an issue in COPY where concurrent requests may have copied the wrong "
"data."

msgid ""
"Fixed an issue that caused Delete Multiple Objects requests with large "
"bodies to 400. This was previously fixed in 2.20.0."
msgstr ""
"Fixed an issue that caused Delete Multiple Objects requests with large "
"bodies to 400. This was previously fixed in 2.20.0."

msgid ""
"Fixed an issue when reading or writing objects with a content-type like "
"``message/*``. Previously, Swift would fail to respond."
msgstr ""
"Fixed an issue when reading or writing objects with a content-type like "
"``message/*``. Previously, Swift would fail to respond."

msgid ""
"Fixed an issue where S3 API 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."
msgstr ""
"Fixed an issue where S3 API 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."

msgid ""
"Fixed an issue where a failed drive could prevent the container sharder from "
"making progress."
msgstr ""
"Fixed an issue where a failed drive could prevent the container sharder from "
"making progress."

msgid ""
"Fixed an issue where an object server failure during a client download could "
"leave an open socket between the proxy and client."
msgstr ""
"Fixed an issue where an object server failure during a client download could "
"leave an open socket between the proxy and client."

msgid ""
"Fixed an issue where background consistency daemon child processes would "
"deadlock waiting on the same file descriptor."
msgstr ""
"Fixed an issue where background consistency daemon child processes would "
"deadlock waiting on the same file descriptor."

msgid ""
"Fixed an issue where deleted EC objects didn't have their on-disk "
"directories cleaned up. This would cause extra resource usage on the object "
"servers."
msgstr ""
"Fixed an issue where deleted EC objects didn't have their on-disk "
"directories cleaned up. This would cause extra resource usage on the object "
"servers."

msgid ""
"Fixed an issue where multipart uploads with the S3 API would sometimes "
"report an error despite all segments being upload successfully."
msgstr ""
"Fixed an issue where multipart uploads with the S3 API would sometimes "
"report an error despite all segments being upload successfully."

msgid ""
"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."
msgstr ""
"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."

msgid ""
"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."
msgstr ""
"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."

msgid ""
"Fixed an issue with SSYNC requests to ensure that only one request can be "
"running on a partition at a time."
msgstr ""
"Fixed an issue with SSYNC requests to ensure that only one request can be "
"running on a partition at a time."

msgid ""
"Fixed an issue with multi-region EC policies that caused the EC "
"reconstructor to constantly attempt cross-region rebuild traffic."
msgstr ""
"Fixed an issue with multi-region EC policies that caused the EC "
"reconstructor to constantly attempt cross-region rebuild traffic."

msgid "Fixed deadlock when logging from a tpool thread."
msgstr "Fixed deadlock when logging from a tpool thread."

msgid ""
"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."
msgstr ""
"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."

msgid ""
"Fixed encoding issue in ssync where a mix of ascii and non-ascii metadata "
"values would cause an error."
msgstr ""
"Fixed encoding issue in ssync where a mix of ASCII and non-ASCII metadata "
"values would cause an error."

msgid ""
"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."
msgstr ""
"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 hand-off replicas on all remaining drives, increasing the "
"drive space used and filling the cluster."

msgid ""
"Fixed issue where bulk requests using xml and expect 100-continue would "
"return a malformed HTTP response."
msgstr ""
"Fixed issue where bulk requests using XML and expect 100-continue would "
"return a malformed HTTP response."

msgid "Fixed listings for sharded containers."
msgstr "Fixed listings for sharded containers."

msgid "Fixed non-ASCII account metadata handling."
msgstr "Fixed non-ASCII account metadata handling."

msgid ""
"Fixed non-deterministic suffix updates in hashes.pkl where a partition may "
"be updated much less often than expected."
msgstr ""
"Fixed non-deterministic suffix updates in hashes.pkl where a partition may "
"be updated much less often than expected."

msgid "Fixed rare socket leak on range requests to erasure-coded objects."
msgstr "Fixed rare socket leak on range requests to erasure-coded objects."

msgid ""
"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."
msgstr ""
"Fixed regression in consolidate_hashes that occurred 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."

msgid ""
"Fixed regression in consolidate_hashes that occurred 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."
msgstr ""
"Fixed regression in consolidate_hashes that occurred 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."

msgid "Fixed some SignatureDoesNotMatch errors when using the AWS .NET SDK."
msgstr "Fixed some SignatureDoesNotMatch errors when using the AWS .NET SDK."

msgid "Fixed some minor test compatibility issues."
msgstr "Fixed some minor test compatibility issues."

msgid "Fixed some title-casing of headers."
msgstr "Fixed some title-casing of headers."

msgid "Fixed the KeyError message when auditor finds an expired object."
msgstr "Fixed the KeyError message when auditor finds an expired object."

msgid "Fixed the stats calculation in the erasure code reconstructor."
msgstr "Fixed the stats calculation in the erasure code reconstructor."

msgid "Fixed time skew when using X-Delete-After."
msgstr "Fixed time skew when using X-Delete-After."

msgid ""
"Fixed using ``swift-ring-builder set_weight`` with more than one device."
msgstr ""
"Fixed using ``swift-ring-builder set_weight`` with more than one device."

msgid "Fixed v1 listings that end with a non-ASCII object name."
msgstr "Fixed v1 listings that end with a non-ASCII object name."

msgid ""
"For further information see the `docs <https://docs.openstack.org/swift/"
"latest/overview_ring.html#module-swift.common.ring.composite_builder>`__"
msgstr ""
"For further information see the `docs <https://docs.openstack.org/swift/"
"latest/overview_ring.html#module-swift.common.ring.composite_builder>`__"

msgid ""
"For new multipart-uploads via the S3 API, the ETag that is stored will be "
"calculated in the same way that AWS uses. This ETag will be used in GET/HEAD "
"responses, bucket listings, and conditional requests via the S3 API. "
"Accessing the same object via the Swift API will use the SLO Etag; however, "
"in JSON container listings the multipart upload etag will be exposed in a "
"new \"s3_etag\" key. Previously, some S3 clients would complain about "
"download corruption when the ETag did not have a '-'."
msgstr ""
"For new multipart-uploads via the S3 API, the ETag that is stored will be "
"calculated in the same way that AWS uses. This ETag will be used in GET/HEAD "
"responses, bucket listings, and conditional requests via the S3 API. "
"Accessing the same object via the Swift API will use the SLO Etag; however, "
"in JSON container listings the multipart upload etag will be exposed in a "
"new \"s3_etag\" key. Previously, some S3 clients would complain about "
"download corruption when the ETag did not have a '-'."

msgid "Fractional replicas are no longer allowed for erasure code policies."
msgstr "Fractional replicas are no longer allowed for erasure code policies."

msgid ""
"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."
msgstr ""
"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."

msgid ""
"Getting an SLO manifest with ``?format=raw`` now responds with an ETag that "
"matches the MD5 of the generated body rather than the MD5 of the manifest "
"stored on disk."
msgstr ""
"Getting an SLO manifest with ``?format=raw`` now responds with an ETag that "
"matches the MD5 of the generated body rather than the MD5 of the manifest "
"stored on disk."

msgid "I/O priority is now supported on AArch64 architecture."
msgstr "I/O priority is now supported on AArch64 architecture."

msgid ""
"If a proxy server is configured to autocreate accounts and the account "
"create fails, it will now return a server error (500) instead of Not Found "
"(404)."
msgstr ""
"If a proxy server is configured to autocreate accounts and the account "
"create fails, it will now return a server error (500) instead of Not Found "
"(404)."

msgid ""
"If proxy and object layers can be upgraded independently and proxies can be "
"upgraded quickly:"
msgstr ""
"If proxy and object layers can be upgraded independently and proxies can be "
"upgraded quickly:"

msgid "If running Swift under Python 3, ``eventlet`` must be at least 0.25.0."
msgstr "If running Swift under Python 3, ``eventlet`` must be at least 0.25.0."

msgid ""
"If upgrading from Swift 2.20.0 or Swift 2.19.1 or earlier, set "
"``meta_version_to_write = 1`` in your keymaster configuration *prior* to "
"upgrading."
msgstr ""
"If upgrading from Swift 2.20.0 or Swift 2.19.1 or earlier, set "
"``meta_version_to_write = 1`` in your keymaster configuration *prior* to "
"upgrading."

msgid ""
"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."
msgstr ""
"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."

msgid "If you have a config file like this::"
msgstr "If you have a config file like this::"

msgid "If you upgrade and roll back, you must delete all `hashes.pkl` files."
msgstr "If you upgrade and roll back, you must delete all `hashes.pkl` files."

msgid "If you want updates to be processed exactly as before, do this::"
msgstr "If you want updates to be processed exactly as before, do this::"

msgid ""
"If you've been testing Swift on Python 3, upgrade at your earliest "
"convenience."
msgstr ""
"If you've been testing Swift on Python 3, upgrade at your earliest "
"convenience."

msgid ""
"If your users can tolerate it, consider a read-only rolling upgrade. Before "
"upgrading, enable the `read-only middleware <https://docs.openstack.org/"
"swift/latest/middleware.html#read-only>`__ cluster-wide to prevent new "
"writes during the upgrade. Additionally, stop and disable the object-"
"reconstructor as above. Upgrade normally, then disable the read-only "
"middleware and re-enable and restart the object-reconstructor."
msgstr ""
"If your users can tolerate it, consider a read-only rolling upgrade. Before "
"upgrading, enable the `read-only middleware <https://docs.openstack.org/"
"swift/latest/middleware.html#read-only>`__ cluster-wide to prevent new "
"writes during the upgrade. Additionally, stop and disable the object-"
"reconstructor as above. Upgrade normally, then disable the read-only "
"middleware and re-enable and restart the object-reconstructor."

msgid "Imported docs content from openstack-manuals project."
msgstr "Imported docs content from openstack-manuals project."

msgid "Improve performance when increasing partition power."
msgstr "Improve performance when increasing partition power."

msgid "Improved S3 API compatibility."
msgstr "Improved S3 API compatibility."

msgid ""
"Improved ``object-updater`` stats logging. It now tells you all of its stats "
"(successes, failures, quarantines due to bad pickles, unlinks, and errors), "
"and it tells you incremental progress every five minutes. The logging at the "
"end of a pass remains and has been expanded to also include all stats."
msgstr ""
"Improved ``object-updater`` stats logging. It now tells you all of its stats "
"(successes, failures, quarantines due to bad pickles, unlinks, and errors), "
"and it tells you incremental progress every five minutes. The logging at the "
"end of a pass remains and has been expanded to also include all stats."

msgid "Improved cache management for account and container responses."
msgstr "Improved cache management for account and container responses."

msgid ""
"Improved container-sharder stat reporting to reduce load on root container "
"databases."
msgstr ""
"Improved container-sharder stat reporting to reduce load on root container "
"databases."

msgid ""
"Improved container-sync performance when data has already been deleted or "
"overwritten."
msgstr ""
"Improved container-sync performance when data has already been deleted or "
"overwritten."

msgid ""
"Improved how containers reclaim deleted rows to reduce locking and object "
"update throughput."
msgstr ""
"Improved how containers reclaim deleted rows to reduce locking and object "
"update throughput."

msgid ""
"Improved logging and statsd metrics. Be aware that this will cause an "
"increase in the proxy-logging statsd metrics emited for S3 responses. "
"However, this should more accurately reflect the state of the system."
msgstr ""
"Improved logging and statsd metrics. Be aware that this will cause an "
"increase in the proxy-logging statsd metrics emitted for S3 responses. "
"However, this should more accurately reflect the state of the system."

msgid ""
"Improved performance by eliminating an unneeded directory structure hash."
msgstr ""
"Improved performance by eliminating an unneeded directory structure hash."

msgid ""
"Improved performance of sharded container listings when performing prefix "
"listings."
msgstr ""
"Improved performance of sharded container listings when performing prefix "
"listings."

msgid ""
"Improved proxy-server performance by reducing unnecessary locking, memory "
"copies, and eventlet scheduling."
msgstr ""
"Improved proxy-server performance by reducing unnecessary locking, memory "
"copies, and eventlet scheduling."

msgid "Improved proxy-to-backend requests to be more RFC-compliant."
msgstr "Improved proxy-to-backend requests to be more RFC-compliant."

msgid "Improved quota-exceeded error messages."
msgstr "Improved quota-exceeded error messages."

msgid ""
"Improved the granularity of the ring dispersion metric so that small "
"improvements after a rebalance can show changes in the dispersion number. "
"Dispersion in existing and new rings can be recalculated using the new ``--"
"recalculate`` option to ``swift-ring-builder``."
msgstr ""
"Improved the granularity of the ring dispersion metric so that small "
"improvements after a rebalance can show changes in the dispersion number. "
"Dispersion in existing and new rings can be recalculated using the new ``--"
"recalculate`` option to ``swift-ring-builder``."

msgid "Improvements in key parts of the consistency engine"
msgstr "Improvements in key parts of the consistency engine"

msgid ""
"In SLO manifests, the `etag` and `size_bytes` keys are now fully optional "
"and not required. Previously, the keys needed to exist but the values were "
"optional. The only required key is `path`."
msgstr ""
"In SLO manifests, the `etag` and `size_bytes` keys are now fully optional "
"and not required. Previously, the keys needed to exist but the values were "
"optional. The only required key is `path`."

msgid ""
"In a rolling upgrade from liberasurecode 1.5.0 or earlier to 1.6.0 or later, "
"object-servers may quarantine newly-written data, leading to availability "
"issues or even data loss. See `bug 1886088 <https://bugs.launchpad.net/"
"liberasurecode/+bug/1886088>`__ for more information, including how to "
"determine whether you are affected. Several mitigations are available to "
"operators:"
msgstr ""
"In a rolling upgrade from liberasurecode 1.5.0 or earlier to 1.6.0 or later, "
"object-servers may quarantine newly-written data, leading to availability "
"issues or even data loss. See `bug 1886088 <https://bugs.launchpad.net/"
"liberasurecode/+bug/1886088>`__ for more information, including how to "
"determine whether you are affected. Several mitigations are available to "
"operators:"

msgid ""
"In the ratelimit middleware, account whitelist and blacklist settings have "
"been deprecated and may be removed in a future release. When found, a "
"deprecation message will be logged. Instead of these config file values, set "
"X-Account-Sysmeta- Global-Write-Ratelimit:WHITELIST and X-Account-Sysmeta-"
"Global- Write-Ratelimit:BLACKLIST on the particular accounts that need to be "
"whitelisted or blacklisted. System metadata cannot be added or modified by "
"standard clients. Use the internal client to set sysmeta."
msgstr ""
"In the ratelimit middleware, account whitelist and blacklist settings have "
"been deprecated and may be removed in a future release. When found, a "
"deprecation message will be logged. Instead of these config file values, set "
"X-Account-Sysmeta- Global-Write-Ratelimit:WHITELIST and X-Account-Sysmeta-"
"Global- Write-Ratelimit:BLACKLIST on the particular accounts that need to be "
"whitelisted or blacklisted. System metadata cannot be added or modified by "
"standard clients. Use the internal client to set sysmeta."

msgid ""
"Include object sysmeta in POST responses. Sysmeta is still stripped from the "
"response before being sent to the client, but this allows middleware to make "
"use of the information."
msgstr ""
"Include object sysmeta in POST responses. Sysmeta is still stripped from the "
"response before being sent to the client, but this allows middleware to make "
"use of the information."

msgid "Include received fragment index in reconstructor log warnings."
msgstr "Include received fragment index in reconstructor log warnings."

msgid ""
"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."
msgstr ""
"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."

msgid "Internal client no longer logs object DELETEs as status 499."
msgstr "Internal client no longer logs object DELETEs as status 499."

msgid "Known Issues"
msgstr "Known Issues"

msgid "Large object reads log fewer client disconnects."
msgstr "Large object reads log fewer client disconnects."

msgid ""
"Let clients request heartbeats during SLO PUTs by including the query "
"parameter ``heartbeat=on``."
msgstr ""
"Let clients request heartbeats during SLO PUTs by including the query "
"parameter ``heartbeat=on``."

msgid ""
"Listing containers in accounts with json or xml now includes a "
"`last_modified` time. This does not change any on-disk data, but simply "
"exposes the value to offer consistency with the object listings on "
"containers."
msgstr ""
"Listing containers in accounts with JSON or XML now includes a "
"`last_modified` time. This does not change any on-disk data, but simply "
"exposes the value to offer consistency with the object listings on "
"containers."

msgid ""
"Lock timeouts in the container updater are now logged at INFO level, not "
"ERROR."
msgstr ""
"Lock timeouts in the container updater are now logged at INFO level, not "
"ERROR."

msgid "Log correct status code for conditional requests."
msgstr "Log correct status code for conditional requests."

msgid ""
"Log deprecation warning for ``allow_versions`` in the container server "
"config. Configure the ``versioned_writes`` middleware in the proxy server "
"instead. This option will be ignored in a future release."
msgstr ""
"Log deprecation warning for ``allow_versions`` in the container server "
"config. Configure the ``versioned_writes`` middleware in the proxy server "
"instead. This option will be ignored in a future release."

msgid ""
"Log deprecation warnings for ``run_pause``. This setting was deprecated in "
"Swift 2.4.0 and is replaced by ``interval``. It may be removed in a future "
"release."
msgstr ""
"Log deprecation warnings for ``run_pause``. This setting was deprecated in "
"Swift 2.4.0 and is replaced by ``interval``. It may be removed in a future "
"release."

msgid ""
"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 <https://docs.openstack.org/swift/latest/logs.html#proxy-"
"logs>`__ for more information."
msgstr ""
"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 <https://docs.openstack.org/swift/latest/logs.html#proxy-"
"logs>`__ for more information."

msgid "Log the correct request type of a subrequest downstream of copy."
msgstr "Log the correct request type of a sub-request downstream of copy."

msgid ""
"Lower bounds of dependencies have been updated to reflect what is actually "
"tested."
msgstr ""
"Lower bounds of dependencies have been updated to reflect what is actually "
"tested."

msgid ""
"Make mount_check option usable in containerized environments by adding a "
"check for an \".ismount\" file at the root directory of a device."
msgstr ""
"Make mount_check option usable in containerised environments by adding a "
"check for an \".ismount\" file at the root directory of a device."

msgid "Mirror X-Trans-Id to X-Openstack-Request-Id."
msgstr "Mirror X-Trans-Id to X-Openstack-Request-Id."

msgid ""
"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."
msgstr ""
"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 middleware. If it is not "
"already present, it will be automatically inserted for you."

msgid "Moved Zuul v3 tox jobs into the Swift code repo."
msgstr "Moved Zuul v3 tox jobs into the Swift code repo."

msgid ""
"Moved other-requirements.txt to bindep.txt. bindep.txt lists non-python "
"dependencies of Swift."
msgstr ""
"Moved other-requirements.txt to bindep.txt. bindep.txt lists non-Python "
"dependencies of Swift."

msgid ""
"Multi-character strings may now be used as delimiters in account and "
"container listings."
msgstr ""
"Multi-character strings may now be used as delimiters in account and "
"container listings."

msgid ""
"Multipart object segments are now actually deleted when the multipart object "
"is deleted via the S3 API."
msgstr ""
"Multipart object segments are now actually deleted when the multipart object "
"is deleted via the S3 API."

msgid "Multipart upload parts may now be copied from other multipart uploads."
msgstr "Multipart upload parts may now be copied from other multipart uploads."

msgid ""
"Multiple keymaster middlewares are now supported. This allows migration from "
"one key provider to another."
msgstr ""
"Multiple keymaster middlewares are now supported. This allows migration from "
"one key provider to another."

msgid "New Features"
msgstr "New Features"

msgid ""
"New buckets created via the S3 API will now store multi-part upload data in "
"the same storage policy as other data rather than the cluster's default "
"storage policy."
msgstr ""
"New buckets created via the S3 API will now store multi-part upload data in "
"the same storage policy as other data rather than the cluster's default "
"storage policy."

msgid ""
"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."
msgstr ""
"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."

msgid "Newton Series Release Notes"
msgstr "Newton Series Release Notes"

msgid ""
"Note that ``secret_id`` values must remain unique across all keymasters in a "
"given pipeline. If they are not unique, the right-most keymaster will take "
"precedence."
msgstr ""
"Note that ``secret_id`` values must remain unique across all keymasters in a "
"given pipeline. If they are not unique, the right-most keymaster will take "
"precedence."

msgid ""
"Note that after writing EC data with Swift 2.11.0 or later, that data will "
"not be accessible to earlier versions of Swift."
msgstr ""
"Note that after writing EC data with Swift 2.11.0 or later, that data will "
"not be accessible to earlier versions of Swift."

msgid ""
"Note: if you have a custom middleware that makes account or container "
"listings, it will only receive listings in JSON format."
msgstr ""
"Note: if you have a custom middleware that makes account or container "
"listings, it will only receive listings in JSON format."

msgid ""
"Now Swift will use ``write_affinity_handoff_delete_count`` to define how "
"many local handoff nodes should swift send request to get more candidates "
"for the final response. The default value \"auto\" means Swift will "
"calculate the number automatically based on the number of replicas and "
"current cluster topology."
msgstr ""
"Now Swift will use ``write_affinity_handoff_delete_count`` to define how "
"many local hand-off nodes should swift send request to get more candidates "
"for the final response. The default value \"auto\" means Swift will "
"calculate the number automatically based on the number of replicas and "
"current cluster topology."

msgid "Now ``swift-recon-cron`` works with conf.d configs."
msgstr "Now ``swift-recon-cron`` works with conf.d configs."

msgid ""
"O_TMPFILE support is now detected by attempting to use it instead of looking "
"at the kernel version. This allows older kernels with backported patches to "
"take advantage of the O_TMPFILE functionality."
msgstr ""
"O_TMPFILE support is now detected by attempting to use it instead of looking "
"at the kernel version. This allows older kernels with backported patches to "
"take advantage of the O_TMPFILE functionality."

msgid ""
"Object expiration respects the ``expiring_objects_container_divisor`` config "
"option."
msgstr ""
"Object expiration respects the ``expiring_objects_container_divisor`` config "
"option."

msgid "Object expiry improvements"
msgstr "Object expiry improvements"

msgid ""
"Object reconstructor logs are now prefixed with information about the "
"specific worker process logging the message. This makes reading the logs and "
"understanding the messages much simpler."
msgstr ""
"Object reconstructor logs are now prefixed with information about the "
"specific worker process logging the message. This makes reading the logs and "
"understanding the messages much simpler."

msgid ""
"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."
msgstr ""
"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."

msgid ""
"Object writes to a container whose existence cannot be verified now 503 "
"instead of 404."
msgstr ""
"Object writes to a container whose existence cannot be verified now 503 "
"instead of 404."

msgid ""
"Objects with an ``X-Delete-At`` value in the far future no longer cause "
"backend server errors."
msgstr ""
"Objects with an ``X-Delete-At`` value in the far future no longer cause "
"backend server errors."

msgid "Ocata Series Release Notes"
msgstr "Ocata Series Release Notes"

msgid ""
"On Python 3, certain S3 API headers are now lower case as they would be "
"coming from AWS."
msgstr ""
"On Python 3, certain S3 API headers are now lower case as they would be "
"coming from AWS."

msgid ""
"On Python 3, fixed a RecursionError in swift-dispersion-report when using "
"TLS."
msgstr ""
"On Python 3, fixed a RecursionError in swift-dispersion-report when using "
"TLS."

msgid ""
"On Python 3, fixed an issue when reading or writing objects with a content "
"type like ``message/*``. Previously, Swift would fail to respond."
msgstr ""
"On Python 3, fixed an issue when reading or writing objects with a content "
"type like ``message/*``. Previously, Swift would fail to respond."

msgid ""
"On Python 3, the KMS keymaster now works with secrets stored in Barbican "
"with a ``text/plain`` payload-content-type."
msgstr ""
"On Python 3, the KMS keymaster now works with secrets stored in Barbican "
"with a ``text/plain`` payload-content-type."

msgid "On Python 3, the formpost middleware now works with unicode file names."
msgstr ""
"On Python 3, the formpost middleware now works with Unicode file names."

msgid ""
"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."
msgstr ""
"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 optimise the files on disk, resulting in better performance."

msgid ""
"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."
msgstr ""
"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."

msgid ""
"Optimize the Erasure Code reconstructor protocol to reduce IO load on "
"servers."
msgstr ""
"Optimise the Erasure Code reconstructor protocol to reduce I/O load on "
"servers."

msgid ""
"Optimized the common case for hashing filesystem trees, thus eliminating a "
"lot of extraneous disk I/O."
msgstr ""
"Optimised the common case for hashing filesystem trees, thus eliminating a "
"lot of extraneous disk I/O."

msgid ""
"Ordinary objects in S3 use the MD5 of the object as the ETag, just like "
"Swift. Multipart Uploads follow a different format, notably including a dash "
"followed by the number of segments. To that end (and for S3 API requests "
"*only*), SLO responses via the S3 API have a literal '-N' added on the end "
"of the ETag."
msgstr ""
"Ordinary objects in S3 use the MD5 of the object as the ETag, just like "
"Swift. Multipart Uploads follow a different format, notably including a dash "
"followed by the number of segments. To that end (and for S3 API requests "
"*only*), SLO responses via the S3 API have a literal '-N' added on the end "
"of the ETag."

msgid "Other Notes"
msgstr "Other Notes"

msgid ""
"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."
msgstr ""
"PUT sub-requests 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."

msgid "Partition power increase improvements:"
msgstr "Partition power increase improvements:"

msgid ""
"Per-service ``auto_create_account_prefix`` settings are now deprecated and "
"may be ignored in a future release; if you need to use this, please set it "
"in the ``[swift-constraints]`` section of ``/etc/swift/swift.conf``."
msgstr ""
"Per-service ``auto_create_account_prefix`` settings are now deprecated and "
"may be ignored in a future release; if you need to use this, please set it "
"in the ``[swift-constraints]`` section of ``/etc/swift/swift.conf``."

msgid "Pike Series Release Notes"
msgstr "Pike Series Release Notes"

msgid ""
"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."
msgstr ""
"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."

msgid ""
"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."
msgstr ""
"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."

msgid ""
"Prevent logged traceback in object-server on client disconnect for chunked "
"transfers to replicated policies."
msgstr ""
"Prevent logged traceback in object-server on client disconnect for chunked "
"transfers to replicated policies."

msgid ""
"Prevent object updates from auto-creating shard containers. This ensures "
"more consistent listings for sharded containers during rebalances."
msgstr ""
"Prevent object updates from auto-creating shard containers. This ensures "
"more consistent listings for sharded containers during rebalances."

msgid ""
"Previously, when deleting objects in multi-region swift deployment with "
"write affinity configured, users always get 404 when deleting object before "
"it's replicated to appropriate nodes."
msgstr ""
"Previously, when deleting objects in multi-region swift deployment with "
"write affinity configured, users always get 404 when deleting object before "
"it's replicated to appropriate nodes."

msgid ""
"Provide an S3 API compatibility layer. The external \"swift3\" project has "
"been imported into Swift's codebase as the \"s3api\" middleware."
msgstr ""
"Provide an S3 API compatibility layer. The external \"swift3\" project has "
"been imported into Swift's codebase as the \"s3api\" middleware."

msgid ""
"Provide useful status codes in logs for some versioning and symlink "
"subrequests that were previously logged as 499."
msgstr ""
"Provide useful status codes in logs for some versioning and symlink "
"subrequests that were previously logged as 499."

msgid ""
"Proxy, account, container, and object servers now support \"seamless reloads"
"\" via ``SIGUSR1``. This is similar to the existing graceful restarts but "
"keeps the server socket open the whole time, reducing service downtime."
msgstr ""
"Proxy, account, container, and object servers now support \"seamless reloads"
"\" via ``SIGUSR1``. This is similar to the existing graceful restarts but "
"keeps the server socket open the whole time, reducing service downtime."

msgid "Python 3 bug fixes:"
msgstr "Python 3 bug fixes:"

msgid "Python 3 fixes:"
msgstr "Python 3 fixes:"

msgid ""
"Python 3.6 and 3.7 are now fully supported. If you've been testing Swift on "
"Python 3, upgrade at your earliest convenience."
msgstr ""
"Python 3.6 and 3.7 are now fully supported. If you've been testing Swift on "
"Python 3, upgrade at your earliest convenience."

msgid "Queens Series Release Notes"
msgstr "Queens Series Release Notes"

msgid ""
"Reduced object-replicator and object-reconstructor CPU usage by only "
"checking that the device list is current when rings change."
msgstr ""
"Reduced object-replicator and object-reconstructor CPU usage by only "
"checking that the device list is current when rings change."

msgid ""
"Region name config option is now respected when configuring S3 credential "
"caching."
msgstr ""
"Region name config option is now respected when configuring S3 credential "
"caching."

msgid ""
"Remove ``swift-temp-url`` script. The functionality has been in swiftclient "
"for a long time and this script has been deprecated since 2.10.0."
msgstr ""
"Remove ``swift-temp-url`` script. The functionality has been in swiftclient "
"for a long time and this script has been deprecated since 2.10.0."

msgid "Remove deprecated ``vm_test_mode`` option."
msgstr "Remove deprecated ``vm_test_mode`` option."

msgid "Remove empty db hash and suffix directories if a db gets quarantined."
msgstr "Remove empty DB hash and suffix directories if a DB gets quarantined."

msgid ""
"Removed \"in-process-\" from func env tox name to work with upstream CI."
msgstr ""
"Removed \"in-process-\" from func env tox name to work with upstream CI."

msgid ""
"Removed a race condition where a POST to an SLO could modify the X-Static-"
"Large-Object metadata."
msgstr ""
"Removed a race condition where a POST to an SLO could modify the X-Static-"
"Large-Object metadata."

msgid ""
"Removed a request-smuggling vector when running a mixed py2/py3 cluster."
msgstr ""
"Removed a request-smuggling vector when running a mixed py2/py3 cluster."

msgid ""
"Removed all ``post_as_copy`` related code and configs. The option has been "
"deprecated since 2.13.0."
msgstr ""
"Removed all ``post_as_copy`` related code and configs. The option has been "
"deprecated since 2.13.0."

msgid ""
"Removed per-device reconstruction stats. Now that the reconstructor is "
"shuffling parts before going through them, those stats no longer make sense."
msgstr ""
"Removed per-device reconstruction stats. Now that the reconstructor is "
"shuffling parts before going through them, those stats no longer make sense."

msgid ""
"Replaced ``replication_one_per_device`` by custom count defined by "
"``replication_concurrency_per_device``. The original config value is "
"deprecated, but continues to function for now. If both values are defined, "
"the old ``replication_one_per_device`` is ignored."
msgstr ""
"Replaced ``replication_one_per_device`` by custom count defined by "
"``replication_concurrency_per_device``. The original config value is "
"deprecated, but continues to function for now. If both values are defined, "
"the old ``replication_one_per_device`` is ignored."

msgid "Replication fixes:"
msgstr "Replication fixes:"

msgid "Replication improvements:"
msgstr "Replication improvements:"

msgid ""
"Replication servers can now handle all request methods. This allows ssync to "
"work with a separate replication network."
msgstr ""
"Replication servers can now handle all request methods. This allows ssync to "
"work with a separate replication network."

msgid "Replication, reconstruction, and diskfile fixes"
msgstr "Replication, reconstruction, and diskfile fixes"

msgid "Replication, reconstruction, and diskfile improvements"
msgstr "Replication, reconstruction, and diskfile improvements"

msgid ""
"Requesting multiple ranges from a Dynamic Large Object now returns the "
"entire object instead of incorrect data. This was previously fixed in 2.23.0."
msgstr ""
"Requesting multiple ranges from a Dynamic Large Object now returns the "
"entire object instead of incorrect data. This was previously fixed in 2.23.0."

msgid "Require that known-bad EC schemes be deprecated"
msgstr "Require that known-bad EC schemes be deprecated"

msgid "Respect server type for --md5 check in swift-recon."
msgstr "Respect server type for --md5 check in swift-recon."

msgid ""
"Respond 400 Bad Request when Accept headers fail to parse instead of "
"returning 406 Not Acceptable."
msgstr ""
"Respond 400 Bad Request when Accept headers fail to parse instead of "
"returning 406 Not Acceptable."

msgid "Ring builder output tables better display weights over 1000."
msgstr "Ring builder output tables better display weights over 1000."

msgid ""
"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)."
msgstr ""
"Ring files now include byteorder information about the endian of the machine "
"used to generate the file, and the values are appropriately byteswapped if "
"deserialised 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 behaviour)."

msgid ""
"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."
msgstr ""
"Rings with min_part_hours set to zero will now only move one partition "
"replica per rebalance, thus matching behaviour when min_part_hours is "
"greater than zero."

msgid "Rocky Series Release Notes"
msgstr "Rocky Series Release Notes"

msgid "S3 API compatibility updates"
msgstr "S3 API compatibility updates"

msgid "S3 API fixes"
msgstr "S3 API fixes"

msgid "S3 API fixes:"
msgstr "S3 API fixes:"

msgid "S3 API improvements"
msgstr "S3 API improvements"

msgid "S3 API improvements:"
msgstr "S3 API improvements:"

msgid ""
"S3 API now allows multipart uploads with non-ASCII characters in the object "
"name."
msgstr ""
"S3 API now allows multipart uploads with non-ASCII characters in the object "
"name."

msgid ""
"S3 API now translates ``503 Service Unavailable`` responses to a more S3-"
"like response instead of raising an error."
msgstr ""
"S3 API now translates ``503 Service Unavailable`` responses to a more S3-"
"like response instead of raising an error."

msgid "S3 ETag for SLOs now include a '-'."
msgstr "S3 ETag for SLOs now include a '-'."

msgid "S3 requests are now less demanding on the container layer."
msgstr "S3 requests are now less demanding on the container layer."

msgid ""
"SLO manifest PUT requests can now be properly validated by sending an ETag "
"header of the md5 sum of the concatenated md5 sums of the referenced "
"segments."
msgstr ""
"SLO manifest PUT requests can now be properly validated by sending an ETag "
"header of the MD5 sum of the concatenated MD5 sums of the referenced "
"segments."

msgid ""
"SLO will now concurrently HEAD segments, resulting in much faster manifest "
"validation and object creation. By default, two HEAD requests will be done "
"at a time, but this can be changed by the operator via the new `concurrency` "
"setting in the \"[filter:slo]\" section of the proxy server config."
msgstr ""
"SLO will now concurrently HEAD segments, resulting in much faster manifest "
"validation and object creation. By default, two HEAD requests will be done "
"at a time, but this can be changed by the operator via the new `concurrency` "
"setting in the \"[filter:slo]\" section of the proxy server config."

msgid ""
"SSYNC replication mode now removes as much of the directory structure as "
"possible as soon at it observes that the directory is empty. This reduces "
"the work needed for subsequent replication passes."
msgstr ""
"SSYNC replication mode now removes as much of the directory structure as "
"possible as soon at it observes that the directory is empty. This reduces "
"the work needed for subsequent replication passes."

msgid ""
"Save the ring when dispersion improves, even if balance doesn't improve."
msgstr ""
"Save the ring when dispersion improves, even if balance doesn't improve."

msgid "Security Issues"
msgstr "Security Issues"

msgid "See CVE-2017-8761 for more information."
msgstr "See CVE-2017-8761 for more information."

msgid ""
"See the provided ``keymaster.conf-sample`` for more information about this "
"setting."
msgstr ""
"See the provided ``keymaster.conf-sample`` for more information about this "
"setting."

msgid "Send ETag header in 206 Partial Content responses to SLO reads."
msgstr "Send ETag header in 206 Partial Content responses to SLO reads."

msgid ""
"Server errors encountered when validating the first segment of a Static or "
"Dynamic Large Object now return a 503 to the client, rather than a 409."
msgstr ""
"Server errors encountered when validating the first segment of a Static or "
"Dynamic Large Object now return a 503 to the client, rather than a 409."

msgid ""
"Server workers may now be gracefully terminated via ``SIGHUP`` or "
"``SIGUSR1``. The parent process will then spawn a fresh worker."
msgstr ""
"Server workers may now be gracefully terminated via ``SIGHUP`` or "
"``SIGUSR1``. The parent process will then spawn a fresh worker."

msgid ""
"Server-side copying of erasure-coded data to a replicated policy no longer "
"copies EC sysmeta. The previous behavior had no material effect, but could "
"confuse operators examining data on disk."
msgstr ""
"Server-side copying of erasure-coded data to a replicated policy no longer "
"copies EC sysmeta. The previous behaviour had no material effect but could "
"confuse operators examining data on disk."

msgid ""
"Servers now open one listen socket per worker, ensuring each worker serves "
"roughly the same number of concurrent connections."
msgstr ""
"Servers now open one listen socket per worker, ensuring each worker serves "
"roughly the same number of concurrent connections."

msgid "Several utility scripts now work better on Python 3:"
msgstr "Several utility scripts now work better on Python 3:"

msgid ""
"Shard ranges with no rows to cleave could previously be left in the CREATED "
"state after cleaving. Now, they are advanced to CLEAVED."
msgstr ""
"Shard ranges with no rows to cleave could previously be left in the CREATED "
"state after cleaving. Now, they are advanced to CLEAVED."

msgid "Sharding fixes:"
msgstr "Sharding fixes:"

msgid "Sharding improvements"
msgstr "Sharding improvements"

msgid "Sharding improvements:"
msgstr "Sharding improvements:"

msgid ""
"Shuffle object-updater work. This somewhat reduces the impact a single "
"overloaded database has on other containers' listings."
msgstr ""
"Shuffle object-updater work. This somewhat reduces the impact a single "
"overloaded database has on other containers' listings."

msgid ""
"Significant improvements to the api-ref doc available at http://developer."
"openstack.org/api-ref/object-storage/."
msgstr ""
"Significant improvements to the api-ref doc available at http://developer."
"openstack.org/api-ref/object-storage/."

msgid ""
"Similar to above, ``expansion_limit`` was added as an absolute-size "
"replacement for the now-deprecated ``shard_shrink_merge_point`` "
"configuration option."
msgstr ""
"Similar to above, ``expansion_limit`` was added as an absolute-size "
"replacement for the now-deprecated ``shard_shrink_merge_point`` "
"configuration option."

msgid ""
"Some client behaviors that the proxy previously logged at warning have been "
"lowered to info."
msgstr ""
"Some client behaviours that the proxy previously logged at warning have been "
"lowered to info."

msgid ""
"Static Large Object (SLO) manifest may now (again) have zero-byte last "
"segments."
msgstr ""
"Static Large Object (SLO) manifest may now (again) have zero-byte last "
"segments."

msgid ""
"Static Large Object sizes in listings for versioned containers are now more "
"accurate."
msgstr ""
"Static Large Object sizes in listings for versioned containers are now more "
"accurate."

msgid ""
"Staticweb correctly handles listings when paths include non-ASCII characters."
msgstr ""
"Staticweb correctly handles listings when paths include non-ASCII characters."

msgid "Stein Series Release Notes"
msgstr "Stein Series Release Notes"

msgid ""
"Stop and disable the object-reconstructor before upgrading. This ensures no "
"upgraded object server starts writing new fragments that old object servers "
"would quarantine."
msgstr ""
"Stop and disable the object-reconstructor before upgrading. This ensures no "
"upgraded object server starts writing new fragments that old object servers "
"would quarantine."

msgid ""
"Stop logging tracebacks in the ``object-replicator`` when it runs out of "
"handoff locations."
msgstr ""
"Stop logging tracebacks in the ``object-replicator`` when it runs out of "
"handoff locations."

msgid "Stopped logging tracebacks when receiving an unexpected response."
msgstr "Stopped logging tracebacks when receiving an unexpected response."

msgid ""
"Storage policy definitions in swift.conf can now define the diskfile to use "
"to access objects. See the included swift.conf-sample file for a description "
"of usage."
msgstr ""
"Storage policy definitions in swift.conf can now define the diskfile to use "
"to access objects. See the included swift.conf-sample file for a description "
"of usage."

msgid "Support multi-range GETs for static large objects."
msgstr "Support multi-range GETs for static large objects."

msgid "Suppress unexpected-file warnings for rsync temp files."
msgstr "Suppress unexpected-file warnings for rsync temp files."

msgid "Suppressed the KeyError message when auditor finds an expired object."
msgstr "Suppressed the KeyError message when auditor finds an expired object."

msgid "Swift Release Notes"
msgstr "Swift Release Notes"

msgid ""
"Swift can now cache the S3 secret from Keystone to use for subsequent "
"requests. This functionality is disabled by default but can be enabled by "
"setting the ``secret_cache_duration`` in the ``[filter:s3token]`` section of "
"the proxy server config to a number greater than 0."
msgstr ""
"Swift can now cache the S3 secret from Keystone to use for subsequent "
"requests. This functionality is disabled by default but can be enabled by "
"setting the ``secret_cache_duration`` in the ``[filter:s3token]`` section of "
"the proxy server config to a number greater than 0."

msgid ""
"Swift now returns a 503 (instead of a 500) when an account auto-create fails."
msgstr ""
"Swift now returns a 503 (instead of a 500) when an account auto-create fails."

msgid ""
"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."
msgstr ""
"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."

msgid ""
"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 <container>/<object>, 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."
msgstr ""
"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 <container>/<object>, 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."

msgid ""
"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."
msgstr ""
"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."

msgid ""
"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."
msgstr ""
"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."

msgid ""
"TempURLs using the \"inline\" parameter can now also set the \"filename\" "
"parameter. Both are used in the Content-Disposition response header."
msgstr ""
"TempURLs using the \"inline\" parameter can now also set the \"filename\" "
"parameter. Both are used in the Content-Disposition response header."

msgid ""
"Temporary URLs now support one common form of ISO 8601 timestamps in "
"addition to Unix seconds-since-epoch timestamps. The ISO 8601 format "
"accepted is '%Y-%m-%dT%H:%M:%SZ'. This makes TempURLs more user-friendly to "
"produce and consume."
msgstr ""
"Temporary URLs now support one common form of ISO 8601 timestamps in "
"addition to Unix seconds-since-epoch timestamps. The ISO 8601 format "
"accepted is '%Y-%m-%dT%H:%M:%SZ'. This makes TempURLs more user-friendly to "
"produce and consume."

msgid ""
"The 'compact' command now outputs the total number of compactible sequences."
msgstr ""
"The 'compact' command now outputs the total number of compactible sequences."

msgid ""
"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 results in much faster rebalance times "
"on servers with many drives."
msgstr ""
"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 results in much faster rebalance times "
"on servers with many drives."

msgid ""
"The EC reconstructor will now attempt to remove empty directories "
"immediately, while the inodes are still cached, rather than waiting until "
"the next run."
msgstr ""
"The EC reconstructor will now attempt to remove empty directories "
"immediately, while the inodes are still cached, rather than waiting until "
"the next run."

msgid "The ETag-quoting middleware no longer raises TypeErrors."
msgstr "The ETag-quoting middleware no longer raises TypeErrors."

msgid ""
"The ``StatsdClient.set_prefix`` method is now deprecated and may be removed "
"in a future release; by extension, so is the ``LogAdapter."
"set_statsd_prefix`` method. Middleware developers should use the "
"``statsd_tail_prefix`` argument to ``get_logger`` instead."
msgstr ""
"The ``StatsdClient.set_prefix`` method is now deprecated and may be removed "
"in a future release; by extension, so is the ``LogAdapter."
"set_statsd_prefix`` method. Middleware developers should use the "
"``statsd_tail_prefix`` argument to ``get_logger`` instead."

msgid "The ``cname_lookup`` middleware now works with dnspython 2.0 and later."
msgstr ""
"The ``cname_lookup`` middleware now works with dnspython 2.0 and later."

msgid ""
"The ``container-replicator`` now correctly enqueues ``container-reconciler`` "
"work for sharded containers."
msgstr ""
"The ``container-replicator`` now correctly enqueues ``container-reconciler`` "
"work for sharded containers."

msgid ""
"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."
msgstr ""
"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."

msgid ""
"The ``domain_remap`` middleware now supports the ``mangle_client_paths`` "
"option. Its default \"false\" value changes ``domain_remap`` parsing to stop "
"stripping the ``path_root`` value from URL paths. If users depend on this "
"path mangling, operators should set ``mangle_client_paths`` to \"True\" "
"before upgrading."
msgstr ""
"The ``domain_remap`` middleware now supports the ``mangle_client_paths`` "
"option. Its default \"false\" value changes ``domain_remap`` parsing to stop "
"stripping the ``path_root`` value from URL paths. If users depend on this "
"path mangling, operators should set ``mangle_client_paths`` to \"True\" "
"before upgrading."

msgid ""
"The ``kmip_keymaster`` middleware can now be configured directly in the "
"proxy-server config file. The existing behavior of using an external config "
"file is still supported."
msgstr ""
"The ``kmip_keymaster`` middleware can now be configured directly in the "
"proxy-server config file. The existing behaviour of using an external config "
"file is still supported."

msgid ""
"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``."
msgstr ""
"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``."

msgid ""
"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."
msgstr ""
"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."

msgid ""
"The ``proxy-server`` now ignores 404 responses from handoffs that have no "
"data when deciding on the correct response for object requests, similar to "
"what it already does for account and container requests."
msgstr ""
"The ``proxy-server`` now ignores 404 responses from handoffs that have no "
"data when deciding on the correct response for object requests, similar to "
"what it already does for account and container requests."

msgid ""
"The ``proxy-server`` now ignores 404 responses from handoffs without "
"databases when deciding on the correct response for account and container "
"requests."
msgstr ""
"The ``proxy-server`` now ignores 404 responses from handoffs without "
"databases when deciding on the correct response for account and container "
"requests."

msgid ""
"The ``storage_domain`` option now accepts a comma-separated list of storage "
"domains. This allows multiple storage domains to configured for use with "
"virtual-host style addressing."
msgstr ""
"The ``storage_domain`` option now accepts a comma-separated list of storage "
"domains. This allows multiple storage domains to be configured for use with "
"virtual-host style addressing."

msgid ""
"The ``swift-recon`` tool now queries each object-server IP only once when "
"reporting disk usage. Previously, each port in the ring would be queried; "
"when using servers-per-port, this could dramatically overstate the disk "
"capacity in the cluster."
msgstr ""
"The ``swift-recon`` tool now queries each object-server IP only once when "
"reporting disk usage. Previously, each port in the ring would be queried; "
"when using servers-per-port, this could dramatically overstate the disk "
"capacity in the cluster."

msgid ""
"The above bug was caused by a difference in string types that resulted in "
"ambiguity when decrypting. To prevent the ambiguity for new data, set "
"``meta_version_to_write = 3`` in your keymaster configuration *after* "
"upgrading all proxy servers."
msgstr ""
"The above bug was caused by a difference in string types that resulted in "
"ambiguity when decrypting. To prevent the ambiguity for new data, set "
"``meta_version_to_write = 3`` in your keymaster configuration *after* "
"upgrading all proxy servers."

msgid ""
"The account and container auditors now log and update recon before going to "
"sleep."
msgstr ""
"The account and container auditors now log and update recon before going to "
"sleep."

msgid ""
"The bulk extract middleware once again allows clients to specify metadata "
"(including expiration timestamps) for all objects in the archive."
msgstr ""
"The bulk extract middleware once again allows clients to specify metadata "
"(including expiration timestamps) for all objects in the archive."

msgid ""
"The concurrent read options (``concurrent_gets``, ``concurrency_timeout``, "
"and ``concurrent_ec_extra_requests``) may now be configured per storage-"
"policy."
msgstr ""
"The concurrent read options (``concurrent_gets``, ``concurrency_timeout``, "
"and ``concurrent_ec_extra_requests``) may now be configured per storage-"
"policy."

msgid ""
"The container sharder can now handle containers with special characters in "
"their names."
msgstr ""
"The container sharder can now handle containers with special characters in "
"their names."

msgid ""
"The container-reconciler now scales out better with new ``processes``, "
"``process``, and ``concurrency`` options, similar to the object-expirer."
msgstr ""
"The container-reconciler now scales out better with new ``processes``, "
"``process``, and ``concurrency`` options, similar to the object-expirer."

msgid ""
"The container-updater now reports zero objects and bytes used for child DBs "
"in sharded containers. This prevents double-counting in utilization reports."
msgstr ""
"The container-updater now reports zero objects and bytes used for child DBs "
"in sharded containers. This prevents double-counting in utilisation reports."

msgid ""
"The container-updater will quarantine container databases if all replicas "
"for the account respond 404."
msgstr ""
"The container-updater will quarantine container databases if all replicas "
"for the account respond 404."

msgid "The correct storage policy is now logged for S3 requests."
msgstr "The correct storage policy is now logged for S3 requests."

msgid ""
"The dark-data audit watcher now requires that all primary locations for an "
"object's container agree that the data does not appear in listings to "
"consider data \"dark\". Previously, a network partition that left an object "
"node isolated could cause it to quarantine or delete all of its data."
msgstr ""
"The dark-data audit watcher now requires that all primary locations for an "
"object's container agree that the data does not appear in listings to "
"consider data \"dark\". Previously, a network partition that left an object "
"node isolated could cause it to quarantine or delete all of its data."

msgid ""
"The dark-data audit watcher now skips objects younger than a new "
"configurable ``grace_age`` period. This avoids issues where data could be "
"flagged, quarantined, or deleted because of listing consistency issues. The "
"default is one week."
msgstr ""
"The dark-data audit watcher now skips objects younger than a new "
"configurable ``grace_age`` period. This avoids issues where data could be "
"flagged, quarantined, or deleted because of listing consistency issues. The "
"default is one week."

msgid ""
"The default for `object_post_as_copy` has been changed to False. The option "
"is now deprecated and will be removed in a future release. If your cluster "
"is still running with post-as-copy enabled, please update it to use the "
"\"fast-post\" method. Future versions of Swift will not support post-as-"
"copy, and future features will not be supported under post-as-copy. (\"Fast-"
"post\" is where `object_post_as_copy` is false)."
msgstr ""
"The default for `object_post_as_copy` has been changed to False. The option "
"is now deprecated and will be removed in a future release. If your cluster "
"is still running with post-as-copy enabled, please update it to use the "
"\"fast-post\" method. Future versions of Swift will not support post-as-"
"copy, and future features will not be supported under post-as-copy. (\"Fast-"
"post\" is where `object_post_as_copy` is false)."

msgid ""
"The default location is now set to \"us-east-1\". This is more likely to be "
"the default region that a client will try when using v4 signatures."
msgstr ""
"The default location is now set to \"us-east-1\". This is more likely to be "
"the default region that a client will try when using v4 signatures."

msgid ""
"The erasure code reconstructor `handoffs_first` option has been deprecated "
"in favor of `handoffs_only`. `handoffs_only` is far more useful, and just "
"like `handoffs_first` mode in the replicator, it gives the operator the "
"option of forcing the consistency engine to focus solely on revert (handoff) "
"jobs, thus improving the speed of rebalances.  The `handoffs_only` behavior "
"is somewhat consistent with the replicator's `handoffs_first` option (any "
"error on any handoff in the replicator will make it essentially handoff only "
"forever) but the `handoff_only` option does what you want and is named "
"correctly in the reconstructor."
msgstr ""
"The erasure code reconstructor `handoffs_first` option has been deprecated "
"in favour of `handoffs_only`. `handoffs_only` is far more useful, and just "
"like `handoffs_first` mode in the replicator, it gives the operator the "
"option of forcing the consistency engine to focus solely on revert (handoff) "
"jobs, thus improving the speed of rebalances.  The `handoffs_only` behaviour "
"is somewhat consistent with the replicator's `handoffs_first` option (any "
"error on any hand-off in the replicator will make it essentially hand-off "
"only forever) but the `handoff_only` option does what you want and is named "
"correctly in the reconstructor."

msgid ""
"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."
msgstr ""
"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."

msgid ""
"The formpost middleware now properly supports uploading multiple files with "
"different content-types."
msgstr ""
"The formpost middleware now properly supports uploading multiple files with "
"different content-types."

msgid "The formpost middleware now works with unicode file names."
msgstr "The formpost middleware now works with Unicode file names."

msgid ""
"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."
msgstr ""
"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."

msgid ""
"The internal clients used by the container-reconciler, container-sharder, "
"container-sync, and object-expirer daemons now use a more-descriptive "
"``<daemon>-ic`` log name, rather than ``swift``. If you previously "
"configured the ``log_name`` option in ``internal-client.conf``, you must now "
"use the ``set log_name = <value>`` syntax to configure it, even if no value "
"is set in the ``[DEFAULT]`` section. This may be done prior to upgrading."
msgstr ""
"The internal clients used by the container-reconciler, container-sharder, "
"container-sync, and object-expirer daemons now use a more-descriptive "
"``<daemon>-ic`` log name, rather than ``swift``. If you previously "
"configured the ``log_name`` option in ``internal-client.conf``, you must now "
"use the ``set log_name = <value>`` syntax to configure it, even if no value "
"is set in the ``[DEFAULT]`` section. This may be done prior to upgrading."

msgid ""
"The message template for proxy logging may now include a ``{domain}`` field "
"for the client-provided ``Host`` header."
msgstr ""
"The message template for proxy logging may now include a ``{domain}`` field "
"for the client-provided ``Host`` header."

msgid ""
"The number of container updates on object PUTs (ie to update listings) has "
"been recomputed to be far more efficient  while maintaining durability "
"guarantees. Specifically, object PUTs to erasure-coded policies will now "
"normally result in far fewer container updates."
msgstr ""
"The number of container updates on object PUTs (ie to update listings) has "
"been recomputed to be far more efficient  while maintaining durability "
"guarantees. Specifically, object PUTs to erasure-coded policies will now "
"normally result in far fewer container updates."

msgid ""
"The object and container server config option ``slowdown`` has been "
"deprecated in favor of the new ``objects_per_second`` and "
"``containers_per_second`` options."
msgstr ""
"The object and container server config option ``slowdown`` has been "
"deprecated in favour of the new ``objects_per_second`` and "
"``containers_per_second`` options."

msgid ""
"The object reconstructor can now rebuild an EC fragment for an expired "
"object."
msgstr ""
"The object reconstructor can now rebuild an EC fragment for an expired "
"object."

msgid ""
"The object reconstructor will now fork all available worker processes when "
"operating on a subset of local devices."
msgstr ""
"The object reconstructor will now fork all available worker processes when "
"operating on a subset of local devices."

msgid ""
"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."
msgstr ""
"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."

msgid ""
"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."
msgstr ""
"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."

msgid "The object-expirer logs fewer client disconnects."
msgstr "The object-expirer logs fewer client disconnects."

msgid ""
"The object-expirer now only cleans up empty containers. Previously, it would "
"attempt to delete all processed containers, regardless of whether there were "
"entries which were skipped or had errors."
msgstr ""
"The object-expirer now only cleans up empty containers. Previously, it would "
"attempt to delete all processed containers, regardless of whether there were "
"entries which were skipped or had errors."

msgid ""
"The object-replicator now logs successful rsync transfers at debug instead "
"of info."
msgstr ""
"The object-replicator now logs successful rsync transfers at debug instead "
"of info."

msgid ""
"The object-updater now defers rate-limited updates to the end of its cycle; "
"these deferred updates will be processed (at the limited rate) until the "
"configured ``interval`` elapses. A new ``max_deferred_updates`` option may "
"be used to bound the deferral queue."
msgstr ""
"The object-updater now defers rate-limited updates to the end of its cycle; "
"these deferred updates will be processed (at the limited rate) until the "
"configured ``interval`` elapses. A new ``max_deferred_updates`` option may "
"be used to bound the deferral queue."

msgid ""
"The output of devices from ``swift-ring-builder`` has been reordered by "
"region, zone, ip, and device."
msgstr ""
"The output of devices from ``swift-ring-builder`` has been reordered by "
"region, zone, ip, and device."

msgid ""
"The post-rsync REPLICATE call no longer recalculates hashes immediately."
msgstr ""
"The post-rsync REPLICATE call no longer recalculates hashes immediately."

msgid ""
"The proxy-server now caches 'listing' shards, improving listing performance "
"for sharded containers. A new config option, "
"``recheck_listing_shard_ranges``, controls the cache time and defaults to 10 "
"minutes; set it to 0 to disable caching (the previous behavior)."
msgstr ""
"The proxy-server now caches 'listing' shards, improving listing performance "
"for sharded containers. A new config option, "
"``recheck_listing_shard_ranges``, controls the cache time and defaults to 10 "
"minutes; set it to 0 to disable caching (the previous behaviour)."

msgid ""
"The reconciler now defers working on policies that have a partition power "
"increase in progress to avoid issues with concurrent writes."
msgstr ""
"The reconciler now defers working on policies that have a partition power "
"increase in progress to avoid issues with concurrent writes."

msgid ""
"The reconstructor now uses the replication network to fetch fragments for "
"reconstruction."
msgstr ""
"The reconstructor now uses the replication network to fetch fragments for "
"reconstruction."

msgid ""
"The relinker better handles data found from earlier partition power "
"increases."
msgstr ""
"The relinker better handles data found from earlier partition power "
"increases."

msgid ""
"The relinker better handles tombstones found for the same object but with "
"different inodes."
msgstr ""
"The relinker better handles tombstones found for the same object but with "
"different inodes."

msgid ""
"The relinker can now target specific storage policies or partitions by using "
"the new ``--policy`` and ``--partition`` options."
msgstr ""
"The relinker can now target specific storage policies or partitions by using "
"the new ``--policy`` and ``--partition`` options."

msgid ""
"The relinker now performs eventlet-hub selection the same way as other "
"daemons. In particular, ``epolls`` will no longer be selected, as it seemed "
"to cause occassional hangs."
msgstr ""
"The relinker now performs eventlet-hub selection the same way as other "
"daemons. In particular, ``epolls`` will no longer be selected, as it seemed "
"to cause occasional hangs."

msgid ""
"The relinker now spawns multiple subprocesses to process disks in parallel. "
"By default, one worker is spawned per disk; use the new ``--workers`` option "
"to control how many subprocesses are used. Use ``--workers=0`` to maintain "
"the previous behavior."
msgstr ""
"The relinker now spawns multiple subprocesses to process disks in parallel. "
"By default, one worker is spawned per disk; use the new ``--workers`` option "
"to control how many subprocesses are used. Use ``--workers=0`` to maintain "
"the previous behaviour."

msgid ""
"The sharder and swift-manage-shard-ranges now consider total row count "
"(instead of just object count) when deciding whether a shard is a candidate "
"for shrinking."
msgstr ""
"The sharder and swift-manage-shard-ranges now consider total row count "
"(instead of just object count) when deciding whether a shard is a candidate "
"for shrinking."

msgid ""
"The sharder daemon has been enhanced to better support the shrinking of "
"shards that are no longer required. Shard containers will now discover from "
"their root container if they should be shrinking. They will also discover "
"the shards into which they should shrink, which may include the root "
"container itself."
msgstr ""
"The sharder daemon has been enhanced to better support the shrinking of "
"shards that are no longer required. Shard containers will now discover from "
"their root container if they should be shrinking. They will also discover "
"the shards into which they should shrink, which may include the root "
"container itself."

msgid ""
"The sharder now correctly identifies and fails audits for shard ranges that "
"overlap exactly."
msgstr ""
"The sharder now correctly identifies and fails audits for shard ranges that "
"overlap exactly."

msgid ""
"The sharding progress reports in recon cache now continue to be included for "
"a period of time after sharding has completed. The time period may be "
"configured using the ``recon_sharded_timeout`` option in the ``[container-"
"sharder]`` section of container-server.conf, and defaults to 12 hours."
msgstr ""
"The sharding progress reports in recon cache now continue to be included for "
"a period of time after sharding has completed. The time period may be "
"configured using the ``recon_sharded_timeout`` option in the ``[container-"
"sharder]`` section of container-server.conf, and defaults to 12 hours."

msgid ""
"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."
msgstr ""
"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."

msgid "This is the final stable branch that will support Python 2.7."
msgstr "This is the final stable branch that will support Python 2.7."

msgid ""
"Throttle update_auditor_status calls so it updates no more than once per "
"minute."
msgstr ""
"Throttle update_auditor_status calls so it updates no more than once per "
"minute."

msgid ""
"Throttle update_auditor_status calls so it updates no more than once per "
"minute. This prevents excessive IO on a new cluster."
msgstr ""
"Throttle update_auditor_status calls so it updates no more than once per "
"minute. This prevents excessive IO on a new cluster."

msgid "Train Series Release Notes"
msgstr "Train Series Release Notes"

msgid "Truncate error logs to prevent log handler from running out of buffer."
msgstr "Truncate error logs to prevent log handler from running out of buffer."

msgid ""
"Turned off thread-logging when monkey-patching with eventlet. This addresses "
"a potential hang in the proxy-server while logging client disconnects."
msgstr ""
"Turned off thread-logging when monkey-patching with eventlet. This addresses "
"a potential hang in the proxy-server while logging client disconnects."

msgid ""
"Ubuntu 18.04 and RDO's CentOS 7 repos package liberasurecode 1.5.0, while "
"Ubuntu 20.04 and RDO's CentOS 8 repos currently package liberasurecode 1.6.0 "
"or 1.6.1. Take care when upgrading major distro versions!"
msgstr ""
"Ubuntu 18.04 and RDO's CentOS 7 repos package liberasurecode 1.5.0, while "
"Ubuntu 20.04 and RDO's CentOS 8 repos currently package liberasurecode 1.6.0 "
"or 1.6.1. Take care when upgrading major distro versions!"

msgid "Unsigned payloads work with v4 signatures once more."
msgstr "Unsigned payloads work with v4 signatures once more."

msgid ""
"Update dnspython dependency to 1.14, removing the need to have separate "
"dnspython dependencies for Py2 and Py3."
msgstr ""
"Update dnspython dependency to 1.14, removing the need to have separate "
"dnspython dependencies for Py2 and Py3."

msgid "Updated docs to reference appropriate ports."
msgstr "Updated docs to reference appropriate ports."

msgid "Updated requirements.txt to match global exclusions and formatting."
msgstr "Updated requirements.txt to match global exclusions and formatting."

msgid "Updated the PyECLib dependency to 1.3.1."
msgstr "Updated the PyECLib dependency to 1.3.1."

msgid ""
"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."
msgstr ""
"Updated the `hashes.pkl` file format to include timestamp information for "
"race detection. Also simplified hashing logic to prevent race conditions and "
"optimise for the common case."

msgid "Updates are now sent over the replication network."
msgstr "Updates are now sent over the replication network."

msgid ""
"Upgrade Impact: If you upgrade and roll back, you must delete all `hashes."
"pkl` files."
msgstr ""
"Upgrade Impact: If you upgrade and roll back, you must delete all `hashes."
"pkl` files."

msgid "Upgrade Notes"
msgstr "Upgrade Notes"

msgid ""
"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."
msgstr ""
"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."

msgid ""
"Upgrade liberasurecode on all object servers. Object servers can now read "
"both old and new fragments."
msgstr ""
"Upgrade liberasurecode on all object servers. Object servers can now read "
"both old and new fragments."

msgid ""
"Upgrade liberasurecode on all proxy servers. Newly-written data will now use "
"new fragments. Note that not-yet-upgraded proxies will not be able to read "
"these newly-written fragments but will instead respond ``500 Internal Server "
"Error``."
msgstr ""
"Upgrade liberasurecode on all proxy servers. Newly-written data will now use "
"new fragments. Note that not-yet-upgraded proxies will not be able to read "
"these newly-written fragments but will instead respond ``500 Internal Server "
"Error``."

msgid ""
"Upon detecting a ring change, the reconstructor now only aborts the jobs for "
"that ring and continues processing jobs for other rings."
msgstr ""
"Upon detecting a ring change, the reconstructor now only aborts the jobs for "
"that ring and continues processing jobs for other rings."

msgid "Ussuri Series Release Notes"
msgstr "Ussuri Series Release Notes"

msgid "Various other minor bug fixes and improvements."
msgstr "Various other minor bug fixes and improvements."

msgid "Victoria Series Release Notes"
msgstr "Victoria Series Release Notes"

msgid ""
"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."
msgstr ""
"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."

msgid "WSGI server processes can now notify systemd when they are ready."
msgstr "WSGI server processes can now notify systemd when they are ready."

msgid "Wallaby Series Release Notes"
msgstr "Wallaby Series Release Notes"

msgid "Warn when relinking/cleaning up and any disks are unmounted."
msgstr "Warn when relinking/cleaning up and any disks are unmounted."

msgid ""
"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."
msgstr ""
"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."

msgid ""
"When building a listing from shards, any failure to retrieve listings will "
"result in a 503 response. Previously, failures fetching a partiucular shard "
"would result in a gap in listings."
msgstr ""
"When building a listing from shards, any failure to retrieve listings will "
"result in a 503 response. Previously, failures fetching a particular shard "
"would result in a gap in listings."

msgid ""
"When listing objects in a container in json format, static large objects "
"(SLOs) will now include an additional new \"slo_etag\" key that matches the "
"etag returned when requesting the SLO. The existing \"hash\" key remains "
"unchanged as the MD5 of the SLO manifest. Text and XML listings are "
"unaffected by this change."
msgstr ""
"When listing objects in a container in json format, static large objects "
"(SLOs) will now include an additional new \"slo_etag\" key that matches the "
"etag returned when requesting the SLO. The existing \"hash\" key remains "
"unchanged as the MD5 of the SLO manifest. Text and XML listings are "
"unaffected by this change."

msgid ""
"When looking for the active root secret, only the right-most keymaster is "
"used."
msgstr ""
"When looking for the active root secret, only the right-most keymaster is "
"used."

msgid ""
"When making backend requests, the ``proxy-server`` now ensures query "
"parameters are always properly quoted. Previously, the proxy would encounter "
"an error on Python 2.7.17 if the client included non-ASCII query parameters "
"in object requests. This was previously fixed in 2.23.0."
msgstr ""
"When making backend requests, the ``proxy-server`` now ensures query "
"parameters are always properly quoted. Previously, the proxy would encounter "
"an error on Python 2.7.17 if the client included non-ASCII query parameters "
"in object requests. This was previously fixed in 2.23.0."

msgid ""
"When object path is not a directory, just quarantine it, rather than the "
"whole suffix."
msgstr ""
"When object path is not a directory, just quarantine it, rather than the "
"whole suffix."

msgid ""
"When refetching Static Large Object manifests, non-manifest responses are "
"now handled better."
msgstr ""
"When refetching Static Large Object manifests, non-manifest responses are "
"now handled better."

msgid ""
"When requesting objects, return 404 if a tombstone is found and is newer "
"than any data found. Previous behavior was to return stale data."
msgstr ""
"When requesting objects, return 404 if a tombstone is found and is newer "
"than any data found. Previous behaviour was to return stale data."

msgid ""
"When running with ``s3_acl`` disabled, ``bucket-owner-full-control`` and "
"``bucket-owner-read`` canned ACLs will be translated to the same Swift ACLs "
"as ``private``."
msgstr ""
"When running with ``s3_acl`` disabled, ``bucket-owner-full-control`` and "
"``bucket-owner-read`` canned ACLs will be translated to the same Swift ACLs "
"as ``private``."

msgid ""
"When the object auditor examines an object, it will now add any missing "
"metadata checksums."
msgstr ""
"When the object auditor examines an object, it will now add any missing "
"metadata checksums."

msgid ""
"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."
msgstr ""
"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."

msgid ""
"Worker process logs will have a bit of information prepended so operators "
"can tell which messages came from which worker. The prefix is \"[worker M/N "
"pid=P] \", where M is the worker's index, N is the total number of workers, "
"and P is the process ID. Every message from the replicator's logger will "
"have the prefix"
msgstr ""
"Worker process logs will have a bit of information prepended so operators "
"can tell which messages came from which worker. The prefix is \"[worker M/N "
"pid=P] \", where M is the worker's index, N is the total number of workers, "
"and P is the process ID. Every message from the replicator's logger will "
"have the prefix"

msgid "Write-affinity aware object deletion"
msgstr "Write-affinity aware object deletion"

msgid ""
"X-Delete-At computation now uses X-Timestamp instead of system time. This "
"prevents clock skew causing inconsistent expiry data."
msgstr ""
"X-Delete-At computation now uses X-Timestamp instead of system time. This "
"prevents clock skew causing inconsistent expiry data."

msgid "Xena Series Release Notes"
msgstr "Xena Series Release Notes"

msgid "Yoga Series Release Notes"
msgstr "Yoga Series Release Notes"

msgid "Zed Series Release Notes"
msgstr "Zed Series Release Notes"

msgid "``Content-Type`` can now be updated when copying an object."
msgstr "``Content-Type`` can now be updated when copying an object."

msgid ""
"``EIO`` errors during read now cause object diskfiles to be quarantined."
msgstr ""
"``EIO`` errors during read now cause object diskfiles to be quarantined."

msgid ""
"``ENOENT`` and ``ENODATA`` errors are better handled in the object "
"replicator and auditor."
msgstr ""
"``ENOENT`` and ``ENODATA`` errors are better handled in the object "
"replicator and auditor."

msgid "``EPIPE`` errors no longer log tracebacks."
msgstr "``EPIPE`` errors no longer log tracebacks."

msgid ""
"``LastModified`` timestamps in listings are now rounded up to whole seconds, "
"like they are in responses from AWS."
msgstr ""
"``LastModified`` timestamps in listings are now rounded up to whole seconds "
"like they are in responses from AWS."

msgid "``fallocate_reserve`` may be specified as a percentage in more places."
msgstr "``fallocate_reserve`` may be specified as a percentage in more places."

msgid "``swift-account-audit``"
msgstr "``swift-account-audit``"

msgid ""
"``swift-container-info`` now summarizes shard range information. Pass ``-v``/"
"``--verbose`` if you want to see all of them."
msgstr ""
"``swift-container-info`` now summarizes shard range information. Pass ``-v``/"
"``--verbose`` if you want to see all of them."

msgid "``swift-dispersion-populate``"
msgstr "``swift-dispersion-populate``"

msgid "``swift-drive-recon``"
msgstr "``swift-drive-recon``"

msgid ""
"``swift-manage-shard-ranges`` can now accept a config file; this may be used "
"to ensure consistency of threshold values with the container-sharder config."
msgstr ""
"``swift-manage-shard-ranges`` can now accept a config file; this may be used "
"to ensure consistency of threshold values with the container-sharder config."

msgid "``swift-manage-shard-ranges`` improvements:"
msgstr "``swift-manage-shard-ranges`` improvements:"

msgid ""
"``swift-recon-cron`` now includes the last time it was run in the recon "
"information."
msgstr ""
"``swift-recon-cron`` now includes the last time it was run in the recon "
"information."

msgid "``swift-recon``"
msgstr "``swift-recon``"

msgid "``swift-ring-builder`` improvements"
msgstr "``swift-ring-builder`` improvements"

msgid ""
"``swift_source`` is set for more sub-requests in the proxy-server. See `the "
"documentation <https://docs.openstack.org/swift/latest/logs.html#swift-"
"source>`__."
msgstr ""
"``swift_source`` is set for more sub-requests in the proxy-server. See `the "
"documentation <https://docs.openstack.org/swift/latest/logs.html#swift-"
"source>`__."

msgid "and you want to take advantage of faster updates, then do this::"
msgstr "and you want to take advantage of faster updates, then do this::"

msgid ""
"cname_lookup middleware now accepts a ``nameservers`` config variable that, "
"if defined, will be used for DNS lookups instead of the system default."
msgstr ""
"cname_lookup middleware now accepts a ``nameservers`` config variable that, "
"if defined, will be used for DNS lookups instead of the system default."

msgid "domain_remap now accepts a list of domains in \"storage_domain\"."
msgstr "domain_remap now accepts a list of domains in \"storage_domain\"."

msgid "formpost can now accept a content-encoding parameter."
msgstr "formpost can now accept a content-encoding parameter."

msgid "name_check and cname_lookup keys have been added to `/info`."
msgstr "name_check and cname_lookup keys have been added to `/info`."

msgid ""
"s3api now mimics some forms of AWS server-side encryption based on whether "
"Swift's at-rest encryption functionality is enabled. Note that S3 API users "
"are now able to know more about how the cluster is configured than they were "
"previously, ie knowledge of encryption at-rest functionality being enabled "
"or not."
msgstr ""
"s3api now mimics some forms of AWS server-side encryption based on whether "
"Swift's at-rest encryption functionality is enabled. Note that S3 API users "
"are now able to know more about how the cluster is configured than they were "
"previously, i.e. knowledge of encryption at-rest functionality being enabled "
"or not."

msgid ""
"s3api now mimics the AWS S3 behavior of periodically sending whitespace "
"characters on a Complete Multipart Upload request to keep the connection "
"from timing out. Note that since a request could fail after the initial 200 "
"OK response has been sent, it is important to check the response body to "
"determine if the request succeeded."
msgstr ""
"s3api now mimics the AWS S3 behaviour of periodically sending whitespace "
"characters on a Complete Multipart Upload request to keep the connection "
"from timing out. Note that since a request could fail after the initial 200 "
"OK response has been sent, it is important to check the response body to "
"determine if the request succeeded."

msgid ""
"s3api now properly handles ``x-amz-metadata-directive`` headers on COPY "
"operations."
msgstr ""
"s3api now properly handles ``x-amz-metadata-directive`` headers on COPY "
"operations."

msgid ""
"s3api now uses concurrency (default 2) to handle multi-delete requests. This "
"allows multi-delete requests to be processed much more quickly."
msgstr ""
"s3api now uses concurrency (default 2) to handle multi-delete requests. This "
"allows multi-delete requests to be processed much more quickly."

msgid "s3api responses now include a '-' in multipart ETags."
msgstr "s3api responses now include a '-' in multipart ETags."

msgid ""
"statsd error messages correspond to 5xx responses only. This makes "
"monitoring more useful because actual errors (5xx) will not be hidden by "
"common user requests (4xx). Previously, some 4xx responses would be included "
"in timing information in the statsd error messages."
msgstr ""
"statsd error messages correspond to 5xx responses only. This makes "
"monitoring more useful because actual errors (5xx) will not be hidden by "
"common user requests (4xx). Previously, some 4xx responses would be included "
"in timing information in the statsd error messages."

msgid "swift-recon now respects storage policy aliases."
msgstr "swift-recon now respects storage policy aliases."

msgid "tempauth user names now support unicode characters."
msgstr "tempauth user names now support Unicode characters."
