metadata update should not delete large file manifest
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
python-swiftclient |
New
|
Undecided
|
Unassigned | ||
swift (Ubuntu) |
Triaged
|
Low
|
Unassigned |
Bug Description
If you upload a large file into swift using "swift -S" (or presumably the upload() method) then add extra metadata using "swift post -m" (or post_object()), the large file manifest metadata is deleted. It shouldn't do that.
$ swift upload -S 10000000 chrisstest /boot/initrd.
boot/initrd.
boot/initrd.
boot/initrd.
boot/initrd.
/boot/initrd.
$ swift stat chrisstest boot/initrd.
Account: AUTH_06b6c15ea8
Container: chrisstest
Object: boot/initrd.
Content Type: application/
Content Length: 30730085
Last Modified: Mon, 03 Nov 2014 14:51:20 GMT
ETag: "235bbbe8ab0520
Manifest: chrisstest_
Meta Mtime: 1413445437.000000
Accept-Ranges: bytes
X-Timestamp: 1415026308.79456
$ swift post -m "x-object-
$ swift stat chrisstest boot/initrd.
Content Type: application/
Content Length: 30730085
Last Modified: Mon, 03 Nov 2014 14:53:52 GMT
Meta X-Object-
Interestingly, "swift download" (and the get_object() method) do re-create the segmented file correctly even without the manifest (does it just make an opportunistic look for chrisstest_
System details:
$ lsb_release -rd
Description: Ubuntu 14.10
Release: 14.10
$ apt-cache policy python-swiftclient
python-swiftclient:
Installed: 1:2.3.0-0ubuntu1
Candidate: 1:2.3.0-0ubuntu1
Version table:
*** 1:2.3.0-0ubuntu1 0
500 http://
100 /var/lib/
Changed in swift (Ubuntu): | |
status: | New → Confirmed |
importance: | Undecided → Low |
status: | Confirmed → Triaged |
The swift(1) command line tool is lying.