Bugzilla will be upgraded to version 5.0 on a still to be determined date in the near future. The original upgrade date has been delayed.
Bug 1601876 - Add a note about large objects handled incorrectly on versioned swift containers to the Developer Guide
Add a note about large objects handled incorrectly on versioned swift contain...
Status: VERIFIED
Product: Red Hat Ceph Storage
Classification: Red Hat
Component: Documentation (Show other bugs)
3.1
Unspecified Linux
unspecified Severity medium
: rc
: 3.2
Assigned To: Bara Ancincova
ceph-qe-bugs
: Reopened
Depends On:
Blocks: 1601921
  Show dependency treegraph
 
Reported: 2018-07-17 07:46 EDT by Tejas
Modified: 2018-10-30 15:23 EDT (History)
10 users (show)

See Also:
Fixed In Version:
Doc Type: Known Issue
Doc Text:
.Large objects handled incorrectly on versioned swift containers During uploads of large objects to versioned swift containers, please use the option `--leave-segments` in the upload using `python-swiftclient`. Not using this option will lead to an overwrite of the manifest file in which case an existing object is overwritten, leading to data loss.
Story Points: ---
Clone Of:
: 1601921 (view as bug list)
Environment:
Last Closed: 2018-10-10 12:25:31 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Tejas 2018-07-17 07:46:06 EDT
Description of problem:
    After uploadng multiple versions of a large object (multiple segment sized objects) with swift, download of the object works only with the first version. If we delete that version, then theres only a 0 sized object .

Version-Release number of selected component (if applicable):
ceph version 12.2.5-32.el7cp

How reproducible:
Always

Steps to Reproduce:
1. Upload multiple versions of a 50MB object with swift.

 ~]# swift -A http://10.70.39.9:8080/auth/1.0 -U test1:swift -K "f3umyrBGq37FRoqrqyVuGjG8sxSl1nrLYrbnxKsH" stat sw1
                      Account: v1
                    Container: sw1
                      Objects: 0
                        Bytes: 0
                     Read ACL:
                    Write ACL:
                      Sync To:
                     Sync Key:
          X-Versions-Location: sw1temp               <--------- version location
                Accept-Ranges: bytes
             X-Storage-Policy: default-placement
X-Container-Bytes-Used-Actual: 0
                  X-Timestamp: 1531826016.26267
                   X-Trans-Id: tx000000000000000000007-005b4dd0a0-17a3-default
                 Content-Type: text/plain; charset=utf-8
       X-Openstack-Request-Id: tx000000000000000000007-005b4dd0a0-17a3-default

 ~]# swift -A http://10.70.39.9:8080/auth/1.0 -U test1:swift -K "f3umyrBGq37FRoqrqyVuGjG8sxSl1nrLYrbnxKsH" upload sw1 f1

~]# swift -A http://10.70.39.9:8080/auth/1.0 -U test1:swift -K "f3umyrBGq37FRoqrqyVuGjG8sxSl1nrLYrbnxKsH" upload sw1 -S=10485760 f1

~]# swift -A http://10.70.39.9:8080/auth/1.0 -U test1:swift -K "f3umyrBGq37FRoqrqyVuGjG8sxSl1nrLYrbnxKsH" upload sw1 -S=5242880 f1

~]# swift -A http://10.70.39.9:8080/auth/1.0 -U test1:swift -K "f3umyrBGq37FRoqrqyVuGjG8sxSl1nrLYrbnxKsH" list sw1temp
002f1/1531826395.608892
002f1/1531826436.378304
 ~]# swift -A http://10.70.39.9:8080/auth/1.0 -U test1:swift -K "f3umyrBGq37FRoqrqyVuGjG8sxSl1nrLYrbnxKsH" list sw1
f1

2. Download the object (with segment size 5MB)

 ~]# swift -A http://10.70.39.9:8080/auth/1.0 -U test1:swift -K "f3umyrBGq37FRoqrqyVuGjG8sxSl1nrLYrbnxKsH" download sw1 f1
f1 [auth 0.011s, headers 0.071s, total 0.632s, 84.325 MB/s]
~]# 
~]# ll -h f1
-rw-r--r--. 1 root root 50M Jul 17 16:49 f1

3. Delete the object and try to download again.

~]# swift -A http://10.70.39.9:8080/auth/1.0 -U test1:swift -K "f3umyrBGq37FRoqrqyVuGjG8sxSl1nrLYrbnxKsH" delete sw1 f1
sw1_segments/f1/1531826380.232016/52428800/5242880/00000001
sw1_segments/f1/1531826380.232016/52428800/5242880/00000003
sw1_segments/f1/1531826380.232016/52428800/5242880/00000007
sw1_segments/f1/1531826380.232016/52428800/5242880/00000008
sw1_segments/f1/1531826380.232016/52428800/5242880/00000006
sw1_segments/f1/1531826380.232016/52428800/5242880/00000005
sw1_segments/f1/1531826380.232016/52428800/5242880/00000000
sw1_segments/f1/1531826380.232016/52428800/5242880/00000002
sw1_segments/f1/1531826380.232016/52428800/5242880/00000009
sw1_segments/f1/1531826380.232016/52428800/5242880/00000004
f1

~]# swift -A http://10.70.39.9:8080/auth/1.0 -U test1:swift -K "f3umyrBGq37FRoqrqyVuGjG8sxSl1nrLYrbnxKsH" list sw1
f1
~]# swift -A http://10.70.39.9:8080/auth/1.0 -U test1:swift -K "f3umyrBGq37FRoqrqyVuGjG8sxSl1nrLYrbnxKsH" download sw1 f1
f1 [auth 0.011s, headers 0.015s, total 0.015s, 0.000 MB/s]
 ~]# ll -h f1
-rw-r--r--. 1 root root 0 Jul 17 16:49 f1   <--- size is 0

4. Delete again and try to download the non large object (normal object)

 ~]# swift -A http://10.70.39.9:8080/auth/1.0 -U test1:swift -K "f3umyrBGq37FRoqrqyVuGjG8sxSl1nrLYrbnxKsH" delete sw1 f1
f1

~]# swift -A http://10.70.39.9:8080/auth/1.0 -U test1:swift -K "f3umyrBGq37FRoqrqyVuGjG8sxSl1nrLYrbnxKsH" list sw1
f1
~]# swift -A http://10.70.39.9:8080/auth/1.0 -U test1:swift -K "f3umyrBGq37FRoqrqyVuGjG8sxSl1nrLYrbnxKsH" list sw1temp
~]# swift -A http://10.70.39.9:8080/auth/1.0 -U test1:swift -K "f3umyrBGq37FRoqrqyVuGjG8sxSl1nrLYrbnxKsH" download sw1 f1
f1 [auth 0.011s, headers 0.058s, total 0.389s, 138.629 MB/s]
~]# ll -h f1
-rw-r--r--. 1 root root 50M Jul 17 16:49 f1

Note You need to log in before you can comment on or make changes to this bug.