Project

General

Profile

Bug #42444

rgw: failed to set correct storage class for append upload

Added by joke lee 4 months ago. Updated 3 days ago.

Status:
Pending Backport
Priority:
Normal
Assignee:
-
Target version:
-
% Done:

0%

Source:
Tags:
Backport:
nautilus,mimic
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature:

Related issues

Copied to rgw - Backport #44144: mimic: rgw: failed to set correct storage class for append upload In Progress
Copied to rgw - Backport #44145: nautilus: rgw: failed to set correct storage class for append upload In Progress

History

#1 Updated by joke lee 4 months ago

https://github.com/ceph/ceph/pull/31088 fix this

when append upload first 5M object and then append 3M, the 3M data should be in the same pool as the first 5M, just like the multipart upload, the storage can be get from head object state

Signed-off-by: yuliyang

default.rgw.meta                 3     5.2 KiB          28     5.2 KiB         0        87 GiB
default.rgw.log 4 87 B 210 87 B 0 87 GiB
default.rgw.buckets.index 6 227 B 4 227 B 0 87 GiB
default.rgw.buckets.data 7 3 MiB 2 3 MiB 0 87 GiB
default.rgw.buckets.non-ec 10 0 B 0 0 B 0 87 GiB
default.rgw.buckets.data-ia 12 5 MiB 2 5 MiB 0 87 GiB

pythpn script

import boto.s3.connection
boto.set_stream_logger('boto')
host = '127.0.0.1'
access_key = 'yly2'
secret_key = 'yly2'
conn = boto.connect_s3(
access_key,
secret_key,
host = host,
is_secure = False,
port=7480,
calling_format = boto.s3.connection.OrdinaryCallingFormat(),
)

bucketname = 'yly2b1'
bucket = conn.get_bucket(bucketname)
obj = "obj6"
headers = {"x-amz-storage-class":"STANDARD_IA"}
data = open('/root/5M', 'rb').read()
  1. req = bucket.connection.make_request("PUT", bucket.name , obj, None, "abc", query_args='append&position=0' )
    req = bucket.connection.make_request("PUT", bucket.name , obj, headers, data, query_args='append&position=0')
    print req.read()
    print req.status
    data2 = open('/root/3M', 'rb').read()
    req = bucket.connection.make_request("PUT", bucket.name , obj, None, data2, query_args='append&position=%s' % (len(data),) )
    default.rgw.buckets.index 6 227 B 4 227 B 0 87 GiB
    default.rgw.buckets.data 7 0 B 1 0 B 0 87 GiB
    default.rgw.buckets.non-ec 10 0 B 0 0 B 0 87 GiB
    default.rgw.buckets.data-ia 12 8 MiB 3 8 MiB 0 87 GiB

#2 Updated by Casey Bodley 4 months ago

  • Status changed from New to 7
  • Backport set to nautilus
  • Pull request ID set to 31088

#3 Updated by Patrick Donnelly 2 months ago

  • Status changed from 7 to Fix Under Review

#4 Updated by Eric Ivancich 3 days ago

  • Status changed from Fix Under Review to Pending Backport
  • Backport changed from nautilus to octopus,nautilus,mimic

#5 Updated by Nathan Cutler 3 days ago

  • Backport changed from octopus,nautilus,mimic to nautilus,mimic

#6 Updated by Nathan Cutler 3 days ago

  • Copied to Backport #44144: mimic: rgw: failed to set correct storage class for append upload added

#7 Updated by Nathan Cutler 3 days ago

  • Copied to Backport #44145: nautilus: rgw: failed to set correct storage class for append upload added

Also available in: Atom PDF