swift/releasenotes/notes/2_21_1_release-17495ac2786b...

60 lines
1.8 KiB
YAML

---
fixes:
- |
Sharding improvements
* The ``container-replicator`` now only attempts to fetch shard ranges if
the remote indicates that it has shard ranges. Further, it does so
with a timeout to prevent the process from hanging in certain cases.
* The ``container-replicator`` now correctly enqueues
``container-reconciler`` work for sharded containers.
* Container metadata related to sharding are now removed when no
longer needed.
- |
S3 API improvements
* Unsigned payloads work with v4 signatures once more.
* Multipart upload parts may now be copied from other multipart uploads.
* CompleteMultipartUpload requests with a ``Content-MD5`` now work.
* ``Content-Type`` can now be updated when copying an object.
* Fixed v1 listings that end with a non-ASCII object name.
- |
Background corruption-detection improvements
* Detect and remove invalid entries from ``hashes.pkl``
* When object path is not a directory, just quarantine it,
rather than the whole suffix.
- |
Static Large Object sizes in listings for versioned containers are
now more accurate.
- |
When refetching Static Large Object manifests, non-manifest responses
are now handled better.
- |
Cross-account symlinks now store correct account information in
container listings. This was previously fixed in 2.22.0.
- |
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.
- |
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.