[Bug 1388880] Re: metadata update should not delete large file manifest
Tim Burke
tim at swiftstack.com
Fri Apr 8 22:12:19 UTC 2016
Looks like POST-as-COPY flattened the DLO; notice how the ETag changed.
It worked out reasonably well in this case, although there are some
orphaned segments and data duplication. However, as described in bug
1487791, similar POSTs can fail for mysterious (to an end-user) reasons.
--
You received this bug notification because you are a member of Ubuntu
OpenStack, which is subscribed to swift in Ubuntu.
https://bugs.launchpad.net/bugs/1388880
Title:
metadata update should not delete large file manifest
Status in python-swiftclient:
New
Status in swift package in Ubuntu:
New
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.img-3.16.0-22-generic
boot/initrd.img-3.16.0-22-generic segment 3
boot/initrd.img-3.16.0-22-generic segment 0
boot/initrd.img-3.16.0-22-generic segment 1
boot/initrd.img-3.16.0-22-generic segment 2
/boot/initrd.img-3.16.0-22-generic
$ swift stat chrisstest boot/initrd.img-3.16.0-22-generic
Account: AUTH_06b6c15ea8c54b8f9832cbaf1ccccfb6
Container: chrisstest
Object: boot/initrd.img-3.16.0-22-generic
Content Type: application/octet-stream
Content Length: 30730085
Last Modified: Mon, 03 Nov 2014 14:51:20 GMT
ETag: "235bbbe8ab0520eec94a6bb8cc079db6"
Manifest: chrisstest_segments/boot/initrd.img-3.16.0-22-generic/1413445437.000000/30730085/10000000/
Meta Mtime: 1413445437.000000
Accept-Ranges: bytes
X-Timestamp: 1415026308.79456
$ swift post -m "x-object-meta-test1:test1" chrisstest
boot/initrd.img-3.16.0-22-generic
$ swift stat chrisstest boot/initrd.img-3.16.0-22-generic
Account: AUTH_06b6c15ea8c54b8f9832cbaf1ccccfb6
Container: chrisstest
Object: boot/initrd.img-3.16.0-22-generic
Content Type: application/octet-stream
Content Length: 30730085
Last Modified: Mon, 03 Nov 2014 14:53:52 GMT
ETag: 53d3910d4f2cea329b515f19cbb5ca89
Meta X-Object-Meta-Test1: test1
Accept-Ranges: bytes
X-Timestamp: 1415026432.67306
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_segments?)
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://gb.archive.ubuntu.com/ubuntu/ utopic/main amd64 Packages
100 /var/lib/dpkg/status
To manage notifications about this bug go to:
https://bugs.launchpad.net/python-swiftclient/+bug/1388880/+subscriptions
More information about the Ubuntu-openstack-bugs
mailing list