Yehuda Sadeh
dcb5e06ca1
rgw: sanitize header attributes
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-11 13:34:41 -08:00
Yehuda Sadeh
2d6b645d23
qa/rgw: support for storage classes
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-11 08:43:41 -08:00
Yehuda Sadeh
0e032311ad
rgw: clean up generic attribute val
...
There are cases where we keep/kept attributes value with a null termination,
which bufferlist.to_str() returns as part of the string and returned
headers are broken.
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-09 13:23:45 -08:00
Yehuda Sadeh
c5e997ecec
test/cli: fix radosgw-admin cli test
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-09 11:02:57 -08:00
Yehuda Sadeh
83f7af473b
qa/ragweed: change the way we determine which ragweed branch to use
...
- if force-branch, use that
- otherwise:
- read default-branch from client config
- use suite branch or ceph branch if suite branch is not defined
- if this branch is one of official releases (or master), prefix
it with 'ceph-'
try to clone branch specified above, if failed (branch doesn't exist probably)
and not force-branch, use default-branch.
Also add an option to override ragweed repo.
Switched all force-branch from ragweed qa suite to default-branch.
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-09 11:02:57 -08:00
Yehuda Sadeh
44fab540cf
rgw: get layout rest op: fix last tail object size
...
This triggered an issue in ragweed
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-07 15:56:46 -08:00
Yehuda Sadeh
a4a5aac7d0
rgw: fix generic obj attrs to http headers
...
use bl.to_str() instead of bl.c_str() to avoid encoding of the null
termination.
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-06 13:14:13 -08:00
Yehuda Sadeh
53dfdc7e36
rgw: fix check for no storage_class specified in obj copy
...
S3 doesn't allow copying object into itself if it doesn't modify
attributes. Need to check that the object's storage class changes
but we only have that info later, so code rearranged a bit to
allow that.
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-06 13:14:13 -08:00
Yehuda Sadeh
1ba297476d
rgw-admin: don't allow configuring zone placement if not configured in zonegroup
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-06 13:14:13 -08:00
Yehuda Sadeh
d5c788e951
rgw-admin: rework storage class zone config
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-04 16:59:09 -08:00
Yehuda Sadeh
b7cae719c0
rgw: use dest placement for compression type
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-04 14:46:39 -08:00
Yehuda Sadeh
5c1ebba550
rgw: remove a warning
...
No need for warning, rgw_placement_rule is being read as a string
and backward compatible.
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-04 13:27:26 -08:00
Yehuda Sadeh
65b55155ae
rgw: fetch_remote_obj() supports placement rule
...
placement rule is optional, and if not provided will use the storage_class of
the source object that is being fetched (if possible).
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-04 13:19:42 -08:00
Yehuda Sadeh
6a8920b1b5
rgw: api adjustments following rebase
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:24 -08:00
Yehuda Sadeh
0e226a27bf
rgw: lifecycle: do filter checks later
...
Filter checks (currently only tags checks) need to access the objects
themselves, while the action checks don't. Make action checks happen first
to avoid unnecessary rados operations if objects don't pass action checks.
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:24 -08:00
Yehuda Sadeh
c70b42fb30
rgw: lifecycle: support for noncurrent transition
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:24 -08:00
Yehuda Sadeh
8cd2d02a32
rgw: lifecycle: current obj transitions
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:24 -08:00
Yehuda Sadeh
3e0b21c971
rgw: lifecycle: use unmod_since when deleting obj
...
To avoid a race. Also use the op object ctx to avoid reading object
head again (if read previously), and consolidate the different
removal calls.
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:24 -08:00
Yehuda Sadeh
cf1dcb4723
rgw: lifecycle: fixes, some useful logging
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:24 -08:00
Yehuda Sadeh
a9c3771b58
rgw: tighter lifecycle processing
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:24 -08:00
Yehuda Sadeh
cad2c2abd8
rgw: lifecycle: consolidate versioned and non-versioned operation
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:23 -08:00
Yehuda Sadeh
a0fa9f5efc
rgw: lifecycle: rework listing iteration
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:23 -08:00
Yehuda Sadeh
5f424aac0a
rgw: lifecycle: some code cleanup
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:23 -08:00
Yehuda Sadeh
a71787704d
rgw: lifecycle and xml parser fixes
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:23 -08:00
Yehuda Sadeh
dc808953f2
rgw: rework lifecycle parsing
...
Use new style xml parsing, instead of inheriting from XMLParser.
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:23 -08:00
Zhang Shaowen
408f04ff4a
rgw: move check_date place
...
Signed-off-by: Zhang Shaowen <zhangshaowen@cmss.chinamobile.com>
2019-01-03 19:00:23 -08:00
Zhang Shaowen
9e1d2af992
rgw: remove enum defination for storage class.
...
Signed-off-by: Zhang Shaowen <zhangshaowen@cmss.chinamobile.com>
2019-01-03 19:00:22 -08:00
Zhang Shaowen
97678bb66a
rgw: support object transition in lifecycle config set.
...
Signed-off-by: Zhang Shaowen <zhangshaowen@cmss.chinamobile.com>
2019-01-03 19:00:22 -08:00
Yehuda Sadeh
2a8e8a98d8
rgw: check that placement rule is valid if bucket exists
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:22 -08:00
Yehuda Sadeh
c3b504df07
rgw: prevent creation of bucket with non-existent storage class
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:22 -08:00
Yehuda Sadeh
c451928019
rgw: don't try to read beyong object size
...
Otherwise even if we prefetch all the data, we'd try to issue another
request to read the rest of the object.
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:22 -08:00
Yehuda Sadeh
dcc3c0c873
rgw: tiering: encode standard storage_class in rule explicitly
...
If it's standard storage class, don't avoid encoding it,
otherwise we can't know if it was set or not.
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:22 -08:00
Yehuda Sadeh
3354bd4812
rgw: tiering: add support for multipart uploads
...
Encode multipart info structure in the upload meta object,
store the storage_cass info there. Use the storage class
that was set on upload init when uploading all the parts,
and when completing the upload.
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:22 -08:00
Yehuda Sadeh
447b74c13a
rgw: tighten storage_class assignment
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:21 -08:00
yuliyang
f3676ebfd4
rgw: fix storage_class in rgw_bucket_dir_entry_meta::dump
...
Signed-off-by: yuliyang <yuliyang@cmss.chinamobile.com>
2019-01-03 19:00:21 -08:00
Yehuda Sadeh
85c5a95f34
rgw, cls_rgw: propagate storage class to the index
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:21 -08:00
Yehuda Sadeh
e2eea3e594
rgw: copy_obj() inherit dest rule from default bucket rule
...
Otherwise it can be empty, in which case we'll always copy data, even
if rule doesn't change.
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:21 -08:00
Yehuda Sadeh
3bac92c90d
rgw: set dest placement rule when copying object
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:21 -08:00
Yehuda Sadeh
316ada445e
rgw: blacklist x-amz-storage-class header
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:21 -08:00
Yehuda Sadeh
053a765876
rgw: data obj synchronous read, use correct ioctx
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:20 -08:00
Yehuda Sadeh
1a3733fc77
rgw: encode dest storage_class when copying object
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:20 -08:00
Yehuda Sadeh
63591be687
rgw: use bl.to_str() and not bl.c_str()
...
can't rely on bufferlist to be null terminated
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:20 -08:00
Yehuda Sadeh
b55c102afc
rgw-admin: clean dumped attrs
...
don't show terminating null chars
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:20 -08:00
Yehuda Sadeh
a270c8b856
rgw: tiering fixes
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 19:00:20 -08:00
Yehuda Sadeh
ab639f2d0f
test/rgw: api fixes
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 18:04:18 -08:00
Yehuda Sadeh
5a08d063ea
rgw: propagate storage class to manifest generator
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 18:04:18 -08:00
Yehuda Sadeh
708d339663
rgw: more storage class data structure changes
...
storage class also handles compression info
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 18:01:37 -08:00
Yehuda Sadeh
5e4201daba
rgw: add support for storage class
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 18:01:37 -08:00
Yehuda Sadeh
cbfb05660e
rgw: object write processors use tail placement rule
...
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-03 17:52:03 -08:00
Alfredo Deza
8cb6de178e
Merge pull request #25674 from alfredodeza/wip-rm37442
...
ceph-volume normalize comma to dot for string to int conversions
Reviewed-by: Andrew Schoen <aschoen@redhat.com>
2019-01-03 13:44:06 -05:00