[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