Auto-extract looses X-Delete-At and X-Delete-After headers
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
| OpenStack Object Storage (swift) |
High
|
Unassigned |
Bug Description
When putting new objects into the storage using the auto-extract feature headers like X-Delete-At or X-Delete-After are not saved. No such headers appear on a created objects. As a result objects are not deleted as expected.
Same command without the extract-archive option saves the file to the storage and sets the header properly.
Happens on Swift 2.22.1.dev67
Our provider claims that it appeared after upgrading from Swift 2.18 to 2.22. Unfortunately I cannot test on other versions. But I can confirm that it was working before.
Command to reproduce:
curl -f -i -XPUT -H 'X-Auth-Token: [...]' -H 'X-Delete-After: 600' https:/
summary: |
- Auto-extract looses X-DELETE-AT and X-DELETE-AFTER headers + Auto-extract looses X-Delete-At and X-Delete-After headers |
description: | updated |
description: | updated |
Tim Burke (1-tim-z) wrote : | #1 |
Changed in swift: | |
status: | New → Confirmed |
importance: | Undecided → High |
Romain LE DISEZ (rledisez) wrote : | #2 |
The way I see it, it was an unspecified behavior. I'd like it to be more "specified". I don't like that we pass all headers blindly to the subrequests
Option 1:
we create dedicated headers that are interpreted by bulk middleware and transmited to the subrequests
eg: X-Bulk-Delete-At, X-Bulk-
Option 2:
we whitelist some specific headers that will be transmit as-is to the subrequests.
eg: X-Delete-At, X-Delete-After, X-Object-Meta-*
I'm in favor of option 2 because it restore previous behavior for the reporter (and probably others) without staying unspecified.
Kota Tsuyuzaki (tsuyuzaki-kota) wrote : | #3 |
Good suggestion Romain. I like the option 2 too.
Change abandoned by Tim Burke (<email address hidden>) on branch: master
Review: https:/
Reason: Abandoned in favor of https:/
Reviewed: https:/
Committed: https:/
Submitter: Zuul
Branch: master
commit ff0753fe19be3d7
Author: Romain LE DISEZ <email address hidden>
Date: Thu Jan 9 09:08:25 2020 -0500
Allow bulk to fwd some headers at tar extraction
Whitelisted headers include X-Delete-
metadata headers (X-Object-Meta-*)
Closes-Bug: 1857546
Change-Id: If5fb164693e395
Changed in swift: | |
status: | In Progress → Fix Released |
Fix proposed to branch: stable/train
Review: https:/
Reviewed: https:/
Committed: https:/
Submitter: Zuul
Branch: stable/train
commit e413c650e385ba4
Author: Romain LE DISEZ <email address hidden>
Date: Thu Jan 9 09:08:25 2020 -0500
Allow bulk to fwd some headers at tar extraction
Whitelisted headers include X-Delete-
metadata headers (X-Object-Meta-*)
Closes-Bug: 1857546
Change-Id: If5fb164693e395
(cherry picked from commit ff0753fe19be3d7
tags: | added: in-stable-train |
This issue was fixed in the openstack/swift 2.24.0 release.
Fix proposed to branch: feature/losf
Review: https:/
Reviewed: https:/
Committed: https:/
Submitter: Zuul
Branch: feature/losf
commit f2ffd900593db28
Author: Clay Gerrard <email address hidden>
Date: Fri Feb 28 11:09:51 2020 -0600
Apply limit to list versioned containers
Change-Id: I28e062273d673c
Closes-Bug: #1863841
commit dc40779307095b8
Author: Clay Gerrard <email address hidden>
Date: Fri Feb 28 10:00:25 2020 -0600
Use float consistently for proxy timeout settings
Change-Id: I433c97df99193e
commit 55049beda5b9d70
Author: Tim Burke <email address hidden>
Date: Fri Feb 28 18:59:32 2020 -0800
tests: Use timedelta to adjust dates, not string manipulations
Change-Id: I8f65ccd7f2a79d
commit 3b65a5998cc921d
Author: Tim Burke <email address hidden>
Date: Wed Jan 10 06:16:41 2018 +0000
Fix up some Content-Type handling in account/container listings
Update content type on 204 (not just 200) to properly handle HEAD
requests from xml/txt listings.
Add "Vary: Accept" header to listings, since otherwise, browsers may
serve the wrong content type from cache (even though we *would have*
sent the *right* type if it actually sent the request).
Change-Id: Iaa333aaca36a8d
commit ecca23eb806e11c
Author: Clay Gerrard <email address hidden>
Date: Fri Feb 21 15:33:21 2020 -0600
Extend eventlet_debug logging to GreenAsyncPile
Change-Id: Ibd9fe5c9a1e75b
commit 0fb3371484f1d0f
Author: Sam Morrison <email address hidden>
Date: Tue Feb 18 10:17:50 2020 +1100
Delay importing swiftclient until after monkey-patching
Commit message below partly copied from nova:
Eventlet monkey patching should be as early as possible
We were seeing infinite recursion opening an ssl socket when running
various combinations of python3, eventlet, and urllib3. It is not
clear exactly what combination of versions are affected, but for
background there is an example of this issue documented here:
https:/
The immediate cause in swift's case was that we were calling
eventlet.
requests, which finally imported urllib3).
We only use the imported function in one place, however; hold off on
importing until we actually need it to ensure that monkey patching
happens first. Note that we *don't* want to monkey-patch at import time,
as we've previously had bugs related to import-time side-effects.
Change-Id: I24f4bcc3d62dc3
Closes-bug: #1863680
Related-bug: #1380815
commit a5afe767581d2cb
Author: Tim Burke <email address hidden>
Date: Wed Feb 19 10:09:49 2020 -0800
Revert "Make roll...
tags: | added: in-feature-losf |
Almost certainly introduced in https:/ /github. com/openstack/ swift/commit/ 6f00d42 -- sorry about that.