]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
5 years agocls_hello: fix typo 32976/head
Sage Weil [Wed, 29 Jan 2020 23:22:36 +0000 (17:22 -0600)]
cls_hello: fix typo

This was mostly harmless but this makes the warning go away.

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoMerge PR #32623 into master
Sage Weil [Wed, 29 Jan 2020 19:59:53 +0000 (13:59 -0600)]
Merge PR #32623 into master

* refs/pull/32623/head:
ceph_release: octopus rc 15.1.0

Reviewed-by: Sebastian Wagner <swagner@suse.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
5 years agoMerge pull request #32828 from leseb/raw-db-wal
Sébastien Han [Wed, 29 Jan 2020 19:29:15 +0000 (20:29 +0100)]
Merge pull request #32828 from leseb/raw-db-wal

ceph-volume: add db and wal support to raw mode

5 years agoMerge pull request #32941 from cbodley/wip-qa-rgw-multisite-pubsub-checkpoint
Yuval Lifshitz [Wed, 29 Jan 2020 16:54:44 +0000 (18:54 +0200)]
Merge pull request #32941 from cbodley/wip-qa-rgw-multisite-pubsub-checkpoint

qa/rgw: multisite checkpoints consider pubsub zone

5 years agoMerge PR #32943 into master
Sage Weil [Wed, 29 Jan 2020 16:34:09 +0000 (10:34 -0600)]
Merge PR #32943 into master

* refs/pull/32943/head:
qa/tasks/ceph_manager: fix chmod on log dir during pg export copy

Reviewed-by: Neha Ojha <nojha@redhat.com>
5 years agoMerge pull request #32932 from smanjara/add-bucket-chown-nonmaster
Casey Bodley [Wed, 29 Jan 2020 15:49:32 +0000 (10:49 -0500)]
Merge pull request #32932 from smanjara/add-bucket-chown-nonmaster

rgw/multisite: warn if bucket chown command is run on non-master zone

Reviewed-by: Casey Bodley <cbodley@redhat.com>
5 years agoMerge pull request #32957 from tchaikov/wip-mgr-cephadm
Sage Weil [Wed, 29 Jan 2020 14:51:39 +0000 (08:51 -0600)]
Merge pull request #32957 from tchaikov/wip-mgr-cephadm

mgr/cephadm: init attrs created by settattr()

5 years agoMerge pull request #32893 from sebastian-philipp/orchestrator-document-client-usage
Sebastian Wagner [Wed, 29 Jan 2020 14:45:02 +0000 (15:45 +0100)]
Merge pull request #32893 from sebastian-philipp/orchestrator-document-client-usage

mgr/orchestrator: Add doc about how to use OrchestratorClientMixin

Reviewed-by: Zac Dover <zac.dover@gmail.com>
5 years agoMerge PR #32939 into master
Sage Weil [Wed, 29 Jan 2020 13:46:38 +0000 (07:46 -0600)]
Merge PR #32939 into master

* refs/pull/32939/head:
mon/MgrMonitor.cc: add always_on_modules to the output of "ceph mgr module ls"

Reviewed-by: Sage Weil <sage@redhat.com>
5 years agomgr/cephadm: drop "type: ignore" annotations 32957/head
Kefu Chai [Wed, 29 Jan 2020 13:40:25 +0000 (21:40 +0800)]
mgr/cephadm: drop "type: ignore" annotations

since these options are already initialized in the constructor, there is
no need to ignore their types when checking those lines using mypy

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agomgr/cephadm: init attrs created by settattr()
Kefu Chai [Wed, 29 Jan 2020 12:46:45 +0000 (20:46 +0800)]
mgr/cephadm: init attrs created by settattr()

to address the test falure caused by mypy:
```
mypy run-test: commands[0] | mypy --config-file=../../mypy.ini ansible/module.py cephadm/module.py mgr_module.py mgr_util.py orchestrator.py orchestrator_cli/module.py rook/module.py
test_orchestrator/module.py
cephadm/module.py: note: In member "_check_for_strays" of class "CephadmOrchestrator":
cephadm/module.py:596: error: "CephadmOrchestrator" has no attribute "warn_on_stray_hosts"
cephadm/module.py:596: error: "CephadmOrchestrator" has no attribute "warn_on_stray_services"
cephadm/module.py:599: error: "CephadmOrchestrator" has no attribute "warn_on_stray_services"
Found 3 errors in 1 file (checked 8 source files)
```
see also https://github.com/python/mypy/issues/5719

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agorgw: add bucket_chown to list of commands that are recommended to be run on master... 32932/head
Shilpa Jagannath [Tue, 28 Jan 2020 12:36:54 +0000 (18:06 +0530)]
rgw: add bucket_chown to list of commands that are recommended to be run on master zone.

Fixes: https://tracker.ceph.com/issues/43884
Signed-off-by: Shilpa Jagannath <smanjara@redhat.com>
5 years agoMerge PR #32823 into master
Sage Weil [Wed, 29 Jan 2020 13:24:02 +0000 (07:24 -0600)]
Merge PR #32823 into master

* refs/pull/32823/head:
common/bl: fix memory corruption in bufferlist::claim_append()

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
5 years agoMerge PR #32940 into master
Sage Weil [Wed, 29 Jan 2020 13:23:34 +0000 (07:23 -0600)]
Merge PR #32940 into master

* refs/pull/32940/head:
qa: remove rados/basic/tasks/rgw_snaps.yml

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
5 years agoMerge PR #32942 into master
Sage Weil [Wed, 29 Jan 2020 13:22:58 +0000 (07:22 -0600)]
Merge PR #32942 into master

* refs/pull/32942/head:
osd: dispatch_context and queue split finish on early bail-out

Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
5 years agoMerge pull request #31879 from joke-lee/rgw-sts-post-upload-auth
Daniel Gryniewicz [Wed, 29 Jan 2020 12:48:10 +0000 (07:48 -0500)]
Merge pull request #31879 from joke-lee/rgw-sts-post-upload-auth

rgw: use STSEngine::authenticate when post upload with x_amz_security_token

5 years agoMerge pull request #31214 from IlsooByun/lc_stale_head
Daniel Gryniewicz [Wed, 29 Jan 2020 12:47:30 +0000 (07:47 -0500)]
Merge pull request #31214 from IlsooByun/lc_stale_head

rgw: prevent LC from reading stale head when transitioning object

5 years agoceph-volume: add db and wal support to raw mode 32828/head
Sébastien Han [Fri, 24 Jan 2020 15:29:54 +0000 (16:29 +0100)]
ceph-volume: add db and wal support to raw mode

Using the raw mode, the OSD preparation can now be called with extra
arguments to specify a block device for either rocksdb db or wal.

The code expects the device to be available and no validation will be
performed. Also, the entire block device will be consumed.

The goal is run this on Kubernetes with Rook and OSD are running on PVC.
Users will request PVC from a certain size, the request will be
acknowledged and a block will be created, then attached to the machine.
Later on consumed by Rook's preparation job.

Signed-off-by: Sébastien Han <seb@redhat.com>
5 years agoMerge pull request #31700 from rishabh-d-dave/cv-list-using-dash-S
Jan Fajerski [Wed, 29 Jan 2020 10:58:10 +0000 (11:58 +0100)]
Merge pull request #31700 from rishabh-d-dave/cv-list-using-dash-S

ceph-volume: refactor listing.py

5 years agoMerge pull request #32808 from theanalyst/rgw/test-iam-bits
Abhishek L [Wed, 29 Jan 2020 10:19:51 +0000 (11:19 +0100)]
Merge pull request #32808 from theanalyst/rgw/test-iam-bits

test: modify iam tests to use a function to set bits

Reviewed-By: Adam Emersen <aemerson@redhat.com>
Reviewed-By: Casey Bodley <cbodley@redhat.com>
5 years agomgr/dashboard: smart: add support for NVMe (#32708)
Lenz Grimmer [Wed, 29 Jan 2020 08:51:37 +0000 (08:51 +0000)]
mgr/dashboard: smart: add support for NVMe (#32708)

mgr/dashboard: smart: add support for NVMe

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Laura Paduano <lpaduano@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
5 years agoMerge pull request #32938 from trociny/wip-fix-freebsd-build
Jason Dillaman [Tue, 28 Jan 2020 23:57:20 +0000 (18:57 -0500)]
Merge pull request #32938 from trociny/wip-fix-freebsd-build

librbd: fix build on freebsd

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
5 years agoqa/rgw: multisite checkpoints consider pubsub zone 32941/head
Casey Bodley [Tue, 28 Jan 2020 19:15:44 +0000 (14:15 -0500)]
qa/rgw: multisite checkpoints consider pubsub zone

pubsub zones are configured to only sync_from the master zone, so bucket
checkpoints should ignore its sync status with respect to other zones

Fixes: https://tracker.ceph.com/issues/43768
Signed-off-by: Casey Bodley <cbodley@redhat.com>
5 years agoMerge PR #32502 into master
Sage Weil [Tue, 28 Jan 2020 20:09:55 +0000 (14:09 -0600)]
Merge PR #32502 into master

* refs/pull/32502/head:
pybind/mgr: Add ceph_module.pyi to improve type checking

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Patrick Seidensal <pseidensal@suse.com>
5 years agoMerge PR #32903 into master
Sage Weil [Tue, 28 Jan 2020 20:09:29 +0000 (14:09 -0600)]
Merge PR #32903 into master

* refs/pull/32903/head:
mgr/devicehealth: fix telemetry stops sending device reports after 48 hours

Reviewed-by: Sage Weil <sage@redhat.com>
5 years agoMerge PR #32365 into master
Sage Weil [Tue, 28 Jan 2020 20:08:51 +0000 (14:08 -0600)]
Merge PR #32365 into master

* refs/pull/32365/head:
mon: Don't put session during feature change

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoMerge PR #32897 into master
Sage Weil [Tue, 28 Jan 2020 20:07:41 +0000 (14:07 -0600)]
Merge PR #32897 into master

* refs/pull/32897/head:
osd/PG: do not leak cluster message when there's no con

Reviewed-by: Neha Ojha <nojha@redhat.com>
5 years agoMerge pull request #31686 from yehudasa/wip-rgw-sync-bucket-6
Casey Bodley [Tue, 28 Jan 2020 20:07:00 +0000 (15:07 -0500)]
Merge pull request #31686 from yehudasa/wip-rgw-sync-bucket-6

rgw: bucket granularity sync

Reviewed-by: Casey Bodley <cbodley@redhat.com>
5 years agoqa/tasks/ceph_manager: fix chmod on log dir during pg export copy 32943/head
Sage Weil [Tue, 28 Jan 2020 19:54:18 +0000 (13:54 -0600)]
qa/tasks/ceph_manager: fix chmod on log dir during pg export copy

With cephadm, we should chmod both /var/log/ceph and /var/log/ceph/$fsid.

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agorgw: bucket sync: invalidate hints data if raced with another writer 31686/head
Yehuda Sadeh [Tue, 28 Jan 2020 19:36:41 +0000 (11:36 -0800)]
rgw: bucket sync: invalidate hints data if raced with another writer

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agoosd: dispatch_context and queue split finish on early bail-out 32942/head
Sage Weil [Tue, 28 Jan 2020 19:33:49 +0000 (13:33 -0600)]
osd: dispatch_context and queue split finish on early bail-out

If we bail out of advance_pg early because there is an upcoming merge, we
still need to dispatch_context() on rctx before we drop the PG lock.  And
the rctx that we submit needs to include the on_applied finisher comit
to call _finish_splits.

This is noticeable (at least) when there is a split and merge that are
both known.  When we process the split, the new child is added to new_pgs.
When we get to the merge epoch, we stop early and take the bail-out
path.

Fix by adding a dispatch_context call for this path.  And further make sure
that both dispatch_context callers in this function queue up the
new_pgs event.

Fixes: https://tracker.ceph.com/issues/43825
Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoqa: remove rados/basic/tasks/rgw_snaps.yml 32940/head
Ali Maredia [Tue, 28 Jan 2020 19:12:57 +0000 (14:12 -0500)]
qa: remove rados/basic/tasks/rgw_snaps.yml

rgw_snaps tasks should not be running in the rados suite.

Signed-off-by: Ali Maredia <amaredia@redhat.com>
5 years agorgw: fix compilation after rebase
Yehuda Sadeh [Tue, 28 Jan 2020 18:34:02 +0000 (10:34 -0800)]
rgw: fix compilation after rebase

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agomon/MgrMonitor.cc: add always_on_modules to the output of "ceph mgr module ls" 32939/head
Neha [Tue, 28 Jan 2020 18:24:55 +0000 (18:24 +0000)]
mon/MgrMonitor.cc: add always_on_modules to the output of "ceph mgr module ls"

Makes it easier to know what the always_on_modules for each release are, without
having to look at the code.

Signed-off-by: Neha Ojha <nojha@redhat.com>
5 years agorgw: don't include empty buckets in potential related buckets
Yehuda Sadeh [Tue, 28 Jan 2020 01:30:50 +0000 (17:30 -0800)]
rgw: don't include empty buckets in potential related buckets

Being used by the sync hint system

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: keep sync_policy as optional member inside RGWBucketInfo
Yehuda Sadeh [Mon, 27 Jan 2020 22:58:21 +0000 (14:58 -0800)]
rgw: keep sync_policy as optional member inside RGWBucketInfo

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: move a few basic types into rgw_basic_types.{h,cc}
Yehuda Sadeh [Mon, 27 Jan 2020 21:52:09 +0000 (13:52 -0800)]
rgw: move a few basic types into rgw_basic_types.{h,cc}

To help with the fight against circular dependencies

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: bucket sync: initiate bucket meta sync if can't find sync handler
Yehuda Sadeh [Fri, 24 Jan 2020 02:47:26 +0000 (18:47 -0800)]
rgw: bucket sync: initiate bucket meta sync if can't find sync handler

If bucket sync handler returns -ENOENT, try to get bucket info. This can
trigger bucket meta sync.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: trim bilog: send bucket param instead of source-bucket param
Yehuda Sadeh [Thu, 23 Jan 2020 22:33:16 +0000 (14:33 -0800)]
rgw: trim bilog: send bucket param instead of source-bucket param

For backward compatibility, so that older rgws could handle it appropriately.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: bucket sync: don't allow replication api on legacy config
Yehuda Sadeh [Thu, 23 Jan 2020 02:45:26 +0000 (18:45 -0800)]
rgw: bucket sync: don't allow replication api on legacy config

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agoPendingReleaseNotes: rgw, bucket granularity
Yehuda Sadeh [Thu, 23 Jan 2020 02:08:05 +0000 (18:08 -0800)]
PendingReleaseNotes: rgw, bucket granularity

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: clarify api
Yehuda Sadeh [Fri, 24 Jan 2020 03:09:42 +0000 (19:09 -0800)]
rgw: clarify api

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: bucket sync: get_hint_entities(), call read_bucket_info once
Yehuda Sadeh [Thu, 23 Jan 2020 01:16:53 +0000 (17:16 -0800)]
rgw: bucket sync: get_hint_entities(), call read_bucket_info once

once per bucket

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: bucket sync: no create param in find directional/symmetrical
Yehuda Sadeh [Thu, 23 Jan 2020 00:54:10 +0000 (16:54 -0800)]
rgw: bucket sync: no create param in find directional/symmetrical

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: bucket sync: don't use optional for some members
Yehuda Sadeh [Thu, 23 Jan 2020 00:41:34 +0000 (16:41 -0800)]
rgw: bucket sync: don't use optional for some members

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: fix a potential leak
Yehuda Sadeh [Tue, 21 Jan 2020 21:20:30 +0000 (13:20 -0800)]
rgw: fix a potential leak

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: remove return std::move()
Yehuda Sadeh [Tue, 21 Jan 2020 21:04:16 +0000 (13:04 -0800)]
rgw: remove return std::move()

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: fetch_remote_obj() create default acls if not found
Yehuda Sadeh [Tue, 21 Jan 2020 20:59:19 +0000 (12:59 -0800)]
rgw: fetch_remote_obj() create default acls if not found

Create default acls if the original object did not have acl header.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: remove superfluous alias
Yehuda Sadeh [Fri, 17 Jan 2020 19:11:30 +0000 (11:11 -0800)]
rgw: remove superfluous alias

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: bucket sync: doc fixes
Yehuda Sadeh [Fri, 17 Jan 2020 03:36:50 +0000 (19:36 -0800)]
rgw: bucket sync: doc fixes

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: bucket sync: find first key with longest matching prefix
Yehuda Sadeh [Tue, 21 Jan 2020 20:03:32 +0000 (12:03 -0800)]
rgw: bucket sync: find first key with longest matching prefix

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw-admin: fix bucket sync markers for non-trivial case
Yehuda Sadeh [Tue, 21 Jan 2020 01:45:02 +0000 (17:45 -0800)]
rgw-admin: fix bucket sync markers for non-trivial case

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: bucket autotrim: fetch aggregated bilog info of all bucket targets
Yehuda Sadeh [Sat, 18 Jan 2020 01:33:41 +0000 (17:33 -0800)]
rgw: bucket autotrim: fetch aggregated bilog info of all bucket targets

Add a new option to the bilog status request that allows returning the
min status for all buckets in a zone that sync from a specific bucket.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: bucket trim: only fetch status from relevant zones
Yehuda Sadeh [Sat, 18 Jan 2020 00:12:27 +0000 (16:12 -0800)]
rgw: bucket trim: only fetch status from relevant zones

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: bucket sync: use list instead of vector
Yehuda Sadeh [Fri, 17 Jan 2020 19:53:09 +0000 (11:53 -0800)]
rgw: bucket sync: use list instead of vector

Keeping pointers into entries inside the container, vector might be
reallocated.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: sync policy doc
Yehuda Sadeh [Sun, 15 Dec 2019 15:56:01 +0000 (07:56 -0800)]
rgw: sync policy doc

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agoceph_argparse: binary flag value can be separate arg
Yehuda Sadeh [Tue, 3 Dec 2019 21:58:49 +0000 (13:58 -0800)]
ceph_argparse: binary flag value can be separate arg

Resurrect old behavior where a binary flag could be detached from the
argument, e.g., "--rgw-cache-enabled false".

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw-admin: fix use of opt_storage_class
Yehuda Sadeh [Tue, 3 Dec 2019 17:31:56 +0000 (09:31 -0800)]
rgw-admin: fix use of opt_storage_class

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agoqa: s3a-hadoop: fix user creation
Yehuda Sadeh [Tue, 3 Dec 2019 17:22:26 +0000 (09:22 -0800)]
qa: s3a-hadoop: fix user creation

This breaks with the new more strict radosgw-admin command line parsing

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw-admin: source zone, dest zone converted to zone id
Yehuda Sadeh [Tue, 3 Dec 2019 02:55:56 +0000 (18:55 -0800)]
rgw-admin: source zone, dest zone converted to zone id

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: pipe map in pipe_set should be multimap
Yehuda Sadeh [Tue, 3 Dec 2019 02:54:35 +0000 (18:54 -0800)]
rgw: pipe map in pipe_set should be multimap

Can hold multiple entries for the same pipe id (if flow defines
more than a single entry).

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: flatten binary encoding for rgw_sync_pipe_params
Yehuda Sadeh [Tue, 3 Dec 2019 02:53:44 +0000 (18:53 -0800)]
rgw: flatten binary encoding for rgw_sync_pipe_params

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: implement s3 get bucket replication api
Yehuda Sadeh [Thu, 28 Nov 2019 04:00:34 +0000 (20:00 -0800)]
rgw: implement s3 get bucket replication api

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: implement s3 delete bucket replication api
Yehuda Sadeh [Thu, 28 Nov 2019 02:11:47 +0000 (18:11 -0800)]
rgw: implement s3 delete bucket replication api

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: put bucket replication extension
Yehuda Sadeh [Thu, 28 Nov 2019 01:46:00 +0000 (17:46 -0800)]
rgw: put bucket replication extension

Now able to set specific source and destination zones

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: implement s3 put-bucket-replication api
Yehuda Sadeh [Thu, 28 Nov 2019 01:14:28 +0000 (17:14 -0800)]
rgw: implement s3 put-bucket-replication api

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: fix pipes zone wildcard match logic
Yehuda Sadeh [Wed, 27 Nov 2019 01:37:26 +0000 (17:37 -0800)]
rgw: fix pipes zone wildcard match logic

and improve logging

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw-admin: bucket sync status related fixes and improvements
Yehuda Sadeh [Wed, 27 Nov 2019 00:12:27 +0000 (16:12 -0800)]
rgw-admin: bucket sync status related fixes and improvements

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: use negative shard id when creating sync pair
Yehuda Sadeh [Wed, 27 Nov 2019 00:11:29 +0000 (16:11 -0800)]
rgw: use negative shard id when creating sync pair

negative shard id means the bucket has a single shard. This
is to be backward compatible.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: remove unneeded #warnings
Yehuda Sadeh [Tue, 26 Nov 2019 21:20:30 +0000 (13:20 -0800)]
rgw: remove unneeded #warnings

and other cleanups

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: sync: only update data log if bucket exports data
Yehuda Sadeh [Tue, 26 Nov 2019 21:01:32 +0000 (13:01 -0800)]
rgw: sync: only update data log if bucket exports data

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: pubsub: user source bucket owner for event, not dest
Yehuda Sadeh [Tue, 26 Nov 2019 20:54:53 +0000 (12:54 -0800)]
rgw: pubsub: user source bucket owner for event, not dest

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: remove a #warning with a comment
Yehuda Sadeh [Tue, 26 Nov 2019 20:54:14 +0000 (12:54 -0800)]
rgw: remove a #warning with a comment

It's a nice to have, not crucial

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: sync: object sync info oid depends on pipe
Yehuda Sadeh [Tue, 26 Nov 2019 20:40:11 +0000 (12:40 -0800)]
rgw: sync: object sync info oid depends on pipe

The object sync info object (used in cloud sync module) depends on pipe. Different
oid is crafted if source and destination buckets are not the same.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: data sync: guard against racing source object change
Yehuda Sadeh [Tue, 26 Nov 2019 20:14:35 +0000 (12:14 -0800)]
rgw: data sync: guard against racing source object change

Source object might have changed since we tried to sync it,
and the decisions we made originally might be irrelevant.
After reading object header, check if the original dest params
are the same dest params we find now for this object, otherwise
need to retry.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: sync: override dest object owner if needed
Yehuda Sadeh [Tue, 26 Nov 2019 00:17:24 +0000 (16:17 -0800)]
rgw: sync: override dest object owner if needed

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: data sync: check user permission in user level sync
Yehuda Sadeh [Sat, 23 Nov 2019 05:02:36 +0000 (21:02 -0800)]
rgw: data sync: check user permission in user level sync

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: auth: api to create auth identity without req_state
Yehuda Sadeh [Sat, 23 Nov 2019 00:48:27 +0000 (16:48 -0800)]
rgw: auth: api to create auth identity without req_state

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: api to check bucket and object permissions without need for req_state
Yehuda Sadeh [Fri, 22 Nov 2019 23:31:55 +0000 (15:31 -0800)]
rgw: api to check bucket and object permissions without need for req_state

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: sync: user mode sync pipes fetch objects using effective uid
Yehuda Sadeh [Wed, 20 Nov 2019 04:01:57 +0000 (20:01 -0800)]
rgw: sync: user mode sync pipes fetch objects using effective uid

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: prepare for system and user mode changes
Yehuda Sadeh [Wed, 20 Nov 2019 01:46:42 +0000 (17:46 -0800)]
rgw: prepare for system and user mode changes

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: data sync: handle preconfition failed error
Yehuda Sadeh [Tue, 19 Nov 2019 22:44:25 +0000 (14:44 -0800)]
rgw: data sync: handle preconfition failed error

Handle precondition failed error. This would happen in case we cannot
sync the object due to either newer local changes, or if the policy
doesn't allow syncing the specific object. Handle this as success, but
log a message.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: http client: propagate errors in client callbacks
Yehuda Sadeh [Tue, 19 Nov 2019 22:43:00 +0000 (14:43 -0800)]
rgw: http client: propagate errors in client callbacks

If one of the callbacks return error, stop the processing and set that
as the request error.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: filter fetch remote obj after reading remote metadata
Yehuda Sadeh [Tue, 19 Nov 2019 18:59:59 +0000 (10:59 -0800)]
rgw: filter fetch remote obj after reading remote metadata

In the sync case: find the appropriate pipe params that match this
remote object (if matches tags / prefix), and adjust fetch if needed --
abort if doesn't match tags. Later will adjust acls as needed (if user
sync and not system).

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: find pipe rules param for specific obj changes
Yehuda Sadeh [Tue, 19 Nov 2019 18:56:33 +0000 (10:56 -0800)]
rgw: find pipe rules param for specific obj changes

 - reuse RGWObjTags::tag_map_t instead of vector of strings
 - fix the prefix search

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: sync: add mode (system, user) as a pipe param
Yehuda Sadeh [Tue, 19 Nov 2019 18:51:49 +0000 (10:51 -0800)]
rgw: sync: add mode (system, user) as a pipe param

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw-admin: add delimiter to tags parsing
Yehuda Sadeh [Tue, 19 Nov 2019 18:50:08 +0000 (10:50 -0800)]
rgw-admin: add delimiter to tags parsing

Otherwise it will use '=' as a delimiter, and need to preserve it as
part of the tag initially.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw-admin: minor message fix
Yehuda Sadeh [Tue, 19 Nov 2019 18:48:41 +0000 (10:48 -0800)]
rgw-admin: minor message fix

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: sync policy: reorganize a bit
Yehuda Sadeh [Mon, 18 Nov 2019 18:38:25 +0000 (10:38 -0800)]
rgw: sync policy: reorganize a bit

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agoceph_json: json encoding filter
Yehuda Sadeh [Sat, 16 Nov 2019 02:32:17 +0000 (18:32 -0800)]
ceph_json: json encoding filter

Can create and register a filter (that will be pointed at by the formatter
as an external feature), that could be then used to replace default
encoders for specific data types. This can be useful in cases where
we want to mutate the output (for example: translate zone ids to zone
names on the fly).

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw, radosgw-admin: explicit zone id type
Yehuda Sadeh [Thu, 14 Nov 2019 04:09:53 +0000 (20:09 -0800)]
rgw, radosgw-admin: explicit zone id type

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: sync: resolve hints when initializing policy handler
Yehuda Sadeh [Thu, 14 Nov 2019 03:26:33 +0000 (19:26 -0800)]
rgw: sync: resolve hints when initializing policy handler

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: modify zone_trace for bucket granularity info
Yehuda Sadeh [Wed, 13 Nov 2019 23:31:55 +0000 (15:31 -0800)]
rgw: modify zone_trace for bucket granularity info

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: data sync: incremental prefixes
Yehuda Sadeh [Wed, 13 Nov 2019 04:50:11 +0000 (20:50 -0800)]
rgw: data sync: incremental prefixes

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: sync: full sync checks for rules prefixes
Yehuda Sadeh [Tue, 12 Nov 2019 23:50:00 +0000 (15:50 -0800)]
rgw: sync: full sync checks for rules prefixes

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: use pipe handlers instead of pipes off pipe_set
Yehuda Sadeh [Tue, 12 Nov 2019 01:50:17 +0000 (17:50 -0800)]
rgw: use pipe handlers instead of pipes off pipe_set

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: sync: pipe rules handler
Yehuda Sadeh [Tue, 12 Nov 2019 00:19:56 +0000 (16:19 -0800)]
rgw: sync: pipe rules handler

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: propagate sync pipe params down the stack
Yehuda Sadeh [Sat, 9 Nov 2019 02:23:42 +0000 (18:23 -0800)]
rgw: propagate sync pipe params down the stack

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw-admin: add option to configure sync pipe prefix, tags
Yehuda Sadeh [Sat, 9 Nov 2019 02:23:21 +0000 (18:23 -0800)]
rgw-admin: add option to configure sync pipe prefix, tags

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
5 years agorgw: sync: extend data structures to extend bucket sync functionality
Yehuda Sadeh [Fri, 8 Nov 2019 22:58:53 +0000 (14:58 -0800)]
rgw: sync: extend data structures to extend bucket sync functionality

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>