]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
8 years agomon: mgr: move 'osd df' handling to manager
Greg Farnum [Fri, 9 Jun 2017 22:08:19 +0000 (15:08 -0700)]
mon: mgr: move 'osd df' handling to manager

Signed-off-by: Greg Farnum <gfarnum@redhat.com>
(cherry picked from commit c416cb4dc47f1365f80a85f2817820ebc05dd743)

8 years agomon: move most PGMapStatService into PGMap; rename PGMon's to PGMonStatService
Greg Farnum [Fri, 9 Jun 2017 22:31:02 +0000 (15:31 -0700)]
mon: move most PGMapStatService into PGMap; rename PGMon's to PGMonStatService

Most of this is independent of the PGMonitor, so move it into
PGMap and strip out those few bits. It'll come in handy shortly
when I move "ceph osd df" into the mgr.

Signed-off-by: Greg Farnum <gfarnum@redhat.com>
(cherry picked from commit 82a04ca579a314116632dcb38dee3baf3231ad04)

8 years agomon: move creating_pgs and reweight_by_utilization into new MonPGStatService
Greg Farnum [Fri, 9 Jun 2017 22:42:47 +0000 (15:42 -0700)]
mon: move creating_pgs and reweight_by_utilization into new MonPGStatService

Use that throughout the monitor code, so that we can use the
PGStatService elsewhere.

Signed-off-by: Greg Farnum <gfarnum@redhat.com>
(cherry picked from commit 9812319616056a92750d3c89151445353f0fb501)

8 years agoqa: deepsea: drop 2nodes health-mds test
Nathan Cutler [Sun, 11 Jun 2017 07:15:02 +0000 (09:15 +0200)]
qa: deepsea: drop 2nodes health-mds test

Now that health-mds requires a client node, 2nodes is no longer an option.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
8 years agoqa: deepsea: umount only existing OSD data partitions
Nathan Cutler [Sat, 10 Jun 2017 16:12:33 +0000 (18:12 +0200)]
qa: deepsea: umount only existing OSD data partitions

This fixes the "end" (unwind) phase of the deepsea task so it unmounts OSD data
partitions only if they exist and are block devices (umount on a non-existent
partition can cause bogus test failure).

Signed-off-by: Nathan Cutler <ncutler@suse.com>
8 years agoMerge pull request #123 from SUSE/wip-deepsea-suite
Nathan Cutler [Sat, 10 Jun 2017 14:36:09 +0000 (16:36 +0200)]
Merge pull request #123 from SUSE/wip-deepsea-suite

Deepsea suite

8 years agoqa: deepsea: add test yaml and tweak task
Nathan Cutler [Mon, 5 Jun 2017 15:08:43 +0000 (17:08 +0200)]
qa: deepsea: add test yaml and tweak task

* adds test yaml in qa/deepsea/basic
* adds exec property
* adds documentation
* after cloning the DeepSea git repo, print the branch name and sha1
  so we have it in the log for verification.
* clone with --depth 1

Signed-off-by: Nathan Cutler <ncutler@suse.com>
8 years agoqa: add initial deepsea task
Jan Fajerski [Fri, 24 Mar 2017 10:52:35 +0000 (11:52 +0100)]
qa: add initial deepsea task

Signed-off-by: Jan Fajerski <jfajerski@suse.com>
Signed-off-by: Nathan Cutler <ncutler@suse.com>
8 years agobuild/ops: rpm: one License line to rule them all
Nathan Cutler [Thu, 8 Jun 2017 07:35:57 +0000 (09:35 +0200)]
build/ops: rpm: one License line to rule them all

The SUSE and Fedora packaging guidelines specify that subpackages _may_ have
their own License line if it is necessary. (Hopefully it's not, because
maintaining one License line is much easier.)

Signed-off-by: Nathan Cutler <ncutler@suse.com>
(cherry picked from commit dcab19bc80545b7c623172fe967a4a407a6b65f7)

Conflicts:
ceph.spec.in (recover from bogousness in the previous commit)

8 years agobuild/ops: rpm: one License line to rule them all
Nathan Cutler [Thu, 8 Jun 2017 07:35:57 +0000 (09:35 +0200)]
build/ops: rpm: one License line to rule them all

The SUSE and Fedora packaging guidelines specify that subpackages _may_ have
their own License line if it is necessary. (Hopefully it's not, because
maintaining one License line is much easier.)

Signed-off-by: Nathan Cutler <ncutler@suse.com>
(cherry picked from commit 5943c512788e493b495386a95f19e75e757b8ef3)

8 years agobuild/ops: rpm: drop autoconf exception license from ceph-mgr
Nathan Cutler [Thu, 8 Jun 2017 06:19:13 +0000 (08:19 +0200)]
build/ops: rpm: drop autoconf exception license from ceph-mgr

It has already been dropped from the main License line.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
8 years agobuild/ops: rpm, COPYING: drop GPL 2.0 with Autoconf Exception
Nathan Cutler [Fri, 26 May 2017 08:22:50 +0000 (10:22 +0200)]
build/ops: rpm, COPYING: drop GPL 2.0 with Autoconf Exception

This license is no longer used.

Fixes: http://tracker.ceph.com/issues/20091
Signed-off-by: Nathan Cutler <ncutler@suse.com>
(cherry picked from commit 1d53c28cbbf5672dfe9bc75247268dd7e912a647)

Conflicts:
ceph.spec.in (upstream doesn't use the SPDX 2.0 syntax)

8 years agoMerge remote-tracking branch 'ceph/master' into wip-20170606
Nathan Cutler [Tue, 6 Jun 2017 13:14:40 +0000 (15:14 +0200)]
Merge remote-tracking branch 'ceph/master' into wip-20170606

8 years agoMerge pull request #15499 from jcsp/wip-doc-whitespace
John Spray [Tue, 6 Jun 2017 11:36:05 +0000 (12:36 +0100)]
Merge pull request #15499 from jcsp/wip-doc-whitespace

doc: fix syntax on code snippets in cephfs/multimds

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
8 years agoMerge pull request #15492 from dillaman/wip-20185
Mykola Golub [Tue, 6 Jun 2017 10:49:29 +0000 (13:49 +0300)]
Merge pull request #15492 from dillaman/wip-20185

rbd: properly decode features when using image name optional

Reviewed-by: Mykola Golub <mgolub@mirantis.com>
8 years agoMerge pull request #15483 from dillaman/wip-20182
Mykola Golub [Tue, 6 Jun 2017 10:48:51 +0000 (13:48 +0300)]
Merge pull request #15483 from dillaman/wip-20182

librbd: filter expected error codes from is_exclusive_lock_owner

Reviewed-by: Mykola Golub <mgolub@mirantis.com>
8 years agoMerge pull request #15490 from ceph/wip-fix-selinux
Boris Ranto [Tue, 6 Jun 2017 08:47:29 +0000 (10:47 +0200)]
Merge pull request #15490 from ceph/wip-fix-selinux

selinux: Install ceph-base before ceph-selinux

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #15415 from dillaman/wip-rbd-valgrind
Mykola Golub [Tue, 6 Jun 2017 07:38:34 +0000 (10:38 +0300)]
Merge pull request #15415 from dillaman/wip-rbd-valgrind

librbd: fix valgrind errors and ensure tests detect future leaks

Reviewed-by: Mykola Golub <mgolub@mirantis.com>
8 years agoMerge pull request #15140 from dillaman/wip-18963
Mykola Golub [Tue, 6 Jun 2017 07:37:56 +0000 (10:37 +0300)]
Merge pull request #15140 from dillaman/wip-18963

rbd-mirror: permit release of local image exclusive lock after force promotion

Reviewed-by: Mykola Golub <mgolub@mirantis.com>
8 years agoMerge pull request #15484 from Adirl/wip
Haomai Wang [Tue, 6 Jun 2017 01:22:52 +0000 (09:22 +0800)]
Merge pull request #15484 from Adirl/wip

msg/async/rdma: Add DSCP support

Reviewed-by: Haomai Wang <haomai@xsky.com>
8 years agoMerge pull request #15493 from yehudasa/wip-rgw-dynamic-sharding
Yehuda Sadeh [Tue, 6 Jun 2017 00:10:04 +0000 (17:10 -0700)]
Merge pull request #15493 from yehudasa/wip-rgw-dynamic-sharding

rgw: dynamic resharding

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
Reviewed-by: Orit Wasserman <owasserm@redhat.com>
8 years agocls/rgw: add missing members initialization 15493/head
Yehuda Sadeh [Mon, 5 Jun 2017 20:07:42 +0000 (13:07 -0700)]
cls/rgw: add missing members initialization

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agoMerge pull request #14239 from liewegas/wip-bluestore-ec-clone
Sage Weil [Mon, 5 Jun 2017 21:39:32 +0000 (16:39 -0500)]
Merge pull request #14239 from liewegas/wip-bluestore-ec-clone

os/bluestore: try to unshare blobs for EC overwrite workload

Reviewed-by: Igor Fedotov <ifedotov@mirantis.com>
8 years agoMerge pull request #15299 from joscollin/wip-cleanup-redundant-headers-6
Sage Weil [Mon, 5 Jun 2017 21:39:05 +0000 (16:39 -0500)]
Merge pull request #15299 from joscollin/wip-cleanup-redundant-headers-6

common: Remove redundant includes - 6

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #15429 from jcsp/wip-nuke-rest
Sage Weil [Mon, 5 Jun 2017 21:36:36 +0000 (16:36 -0500)]
Merge pull request #15429 from jcsp/wip-nuke-rest

pybind/mgr: Delete `rest` module

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agorgw: fix a race
Yehuda Sadeh [Mon, 5 Jun 2017 17:05:24 +0000 (10:05 -0700)]
rgw: fix a race

We referred to complete_op_data after aio call that could have released
it.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agotest/cli/radosgw-admin: update reference help.t
Yehuda Sadeh [Fri, 2 Jun 2017 22:15:27 +0000 (15:15 -0700)]
test/cli/radosgw-admin: update reference help.t

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: fix index completion
Yehuda Sadeh [Fri, 2 Jun 2017 21:42:13 +0000 (14:42 -0700)]
rgw: fix index completion

Was missing bucket complete op, only had the guard (bad merge?).
Pass zones_trace as pointer and treat it as optional param (which
it is).

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: increase max shard prime, consolidate logic
Yehuda Sadeh [Fri, 2 Jun 2017 00:21:07 +0000 (17:21 -0700)]
rgw: increase max shard prime, consolidate logic

Handle larger num of shards (max ~64k now). Use the same hash logic for shard ids
everywhere.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: new num shards proportional to number of objects per shard
Yehuda Sadeh [Thu, 1 Jun 2017 23:55:35 +0000 (16:55 -0700)]
rgw: new num shards proportional to number of objects per shard

and also limit number of shards to not exceed the max.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: handle zones_trace in bi async completion handler
Yehuda Sadeh [Tue, 30 May 2017 23:35:17 +0000 (16:35 -0700)]
rgw: handle zones_trace in bi async completion handler

needed following a rebase

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: remove debug helper code
Yehuda Sadeh [Thu, 25 May 2017 21:11:01 +0000 (14:11 -0700)]
rgw: remove debug helper code

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: ignore -ENOENT on bi_list()
Yehuda Sadeh [Wed, 24 May 2017 23:57:28 +0000 (16:57 -0700)]
rgw: ignore -ENOENT on bi_list()

just treat it as success with empty result

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: run resharding thread only on master zone
Orit Wasserman [Sun, 28 May 2017 07:42:54 +0000 (10:42 +0300)]
rgw: run resharding thread only on master zone

Signed-off-by: Orit Wasserman <owasserm@redhat.com>
8 years agorgw: add check to see if out is null
Orit Wasserman [Tue, 23 May 2017 15:45:00 +0000 (18:45 +0300)]
rgw: add check to see if out is null

Signed-off-by: Orit Wasserman <owasserm@redhat.com>
8 years agorgw: update entry in resharding log when resharding has started
Orit Wasserman [Tue, 23 May 2017 10:37:08 +0000 (13:37 +0300)]
rgw:  update entry in resharding log when resharding has started

Signed-off-by: Orit Wasserman <owasserm@redhat.com>
8 years agorgw: start resharding theard
Orit Wasserman [Sun, 21 May 2017 10:26:37 +0000 (13:26 +0300)]
rgw: start resharding theard

Signed-off-by: Orit Wasserman <owasserm@redhat.com>
8 years agorgw: replace reshard blocking sleep with interruptible condition wait
Yehuda Sadeh [Thu, 18 May 2017 18:51:21 +0000 (11:51 -0700)]
rgw: replace reshard blocking sleep with interruptible condition wait

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: add bucket to resharding queue if needs resharding
Orit Wasserman [Fri, 19 May 2017 11:02:17 +0000 (14:02 +0300)]
rgw: add bucket to resharding queue if needs resharding

Signed-off-by: Orit Wasserman <owasserm@redhat.com>
8 years agorgw-admin: radosgw-admin reshard execute -> reshard process
Yehuda Sadeh [Thu, 25 May 2017 00:00:02 +0000 (17:00 -0700)]
rgw-admin: radosgw-admin reshard execute -> reshard process

to be in line with other radosgw-admin commands.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: update bucket instance with resharding details
Yehuda Sadeh [Wed, 24 May 2017 23:01:25 +0000 (16:01 -0700)]
rgw: update bucket instance with resharding details

can be useful info for later in a cross zone sync

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agoradosgw-admin: reshard execute output adjustments
Yehuda Sadeh [Wed, 24 May 2017 20:21:43 +0000 (13:21 -0700)]
radosgw-admin: reshard execute output adjustments

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agocls/rgw: remove unused field in reshard entry
Yehuda Sadeh [Wed, 24 May 2017 18:47:05 +0000 (11:47 -0700)]
cls/rgw: remove unused field in reshard entry

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: reshard: renew lease and handle marker when listing reshard repo
Yehuda Sadeh [Wed, 24 May 2017 18:21:46 +0000 (11:21 -0700)]
rgw: reshard: renew lease and handle marker when listing reshard repo

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agocls/rgw: fix reshard_list truncation identification
Yehuda Sadeh [Wed, 24 May 2017 18:24:20 +0000 (11:24 -0700)]
cls/rgw: fix reshard_list truncation identification

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agocls/rgw: expose api to generate reshard indexing key
Yehuda Sadeh [Wed, 24 May 2017 18:23:46 +0000 (11:23 -0700)]
cls/rgw: expose api to generate reshard indexing key

So that we could use it as a marker when doing reshard_list.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: remove unneeded and duplicate code
Yehuda Sadeh [Tue, 23 May 2017 00:10:14 +0000 (17:10 -0700)]
rgw: remove unneeded and duplicate code

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: initialize bucket structure
Yehuda Sadeh [Tue, 23 May 2017 00:10:07 +0000 (17:10 -0700)]
rgw: initialize bucket structure

after reading bucket info

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw-admin: revive reshard execute command
Yehuda Sadeh [Wed, 24 May 2017 23:58:47 +0000 (16:58 -0700)]
rgw-admin: revive reshard execute command

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: bucket_id does not include bucket name
Yehuda Sadeh [Wed, 24 May 2017 23:58:19 +0000 (16:58 -0700)]
rgw: bucket_id does not include bucket name

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: bi_list() initialize is_truncated if -ENOENT
Yehuda Sadeh [Wed, 24 May 2017 23:55:21 +0000 (16:55 -0700)]
rgw: bi_list() initialize is_truncated if -ENOENT

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: internal api cleanup
Yehuda Sadeh [Wed, 24 May 2017 23:54:30 +0000 (16:54 -0700)]
rgw: internal api cleanup

rename method, minor change

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agocls/rgw: reshard add command doesn't read existing status
Yehuda Sadeh [Wed, 24 May 2017 23:53:34 +0000 (16:53 -0700)]
cls/rgw: reshard add command doesn't read existing status

No need to read existing status.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agocls/rgw: fix remove_reshard objclass op
Yehuda Sadeh [Fri, 19 May 2017 22:44:06 +0000 (15:44 -0700)]
cls/rgw: fix remove_reshard objclass op

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agocls/rgw: modify logshard key
Yehuda Sadeh [Fri, 19 May 2017 16:22:29 +0000 (09:22 -0700)]
cls/rgw: modify logshard key

The logshard key shouldn't include bucket id.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: multiple fixes and adjustments related to resharding scheduler
Yehuda Sadeh [Thu, 18 May 2017 23:21:19 +0000 (16:21 -0700)]
rgw: multiple fixes and adjustments related to resharding scheduler

still wip, but:
 - get rid of some unneeded rados locking
 - rename shards to logshards where relevant to avoid confusion
 - remove unused code

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: fix compilation following rebase
Yehuda Sadeh [Thu, 18 May 2017 21:48:07 +0000 (14:48 -0700)]
rgw: fix compilation following rebase

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: replace reshard blocking sleep with interruptible condition wait
Yehuda Sadeh [Thu, 18 May 2017 18:51:21 +0000 (11:51 -0700)]
rgw: replace reshard blocking sleep with interruptible condition wait

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: actually reshard an entry from the resharding queue
Orit Wasserman [Fri, 19 May 2017 13:48:12 +0000 (16:48 +0300)]
rgw: actually reshard an entry from the resharding queue

Signed-off-by: Orit Wasserman <owasserm@redhat.com>
8 years agorgw: check if buckets needs resharding on all ops that add new objects
Orit Wasserman [Fri, 19 May 2017 12:20:18 +0000 (15:20 +0300)]
rgw: check if buckets needs resharding on all ops that add new objects

Signed-off-by: Orit Wasserman <owasserm@redhat.com>
8 years agorgw: add bucket to resharding queue if needs resharding
Orit Wasserman [Fri, 19 May 2017 11:02:17 +0000 (14:02 +0300)]
rgw: add bucket to resharding queue if needs resharding

Signed-off-by: Orit Wasserman <owasserm@redhat.com>
8 years agorgw: check for bucket resharding when adding an object
Orit Wasserman [Thu, 18 May 2017 19:48:28 +0000 (22:48 +0300)]
rgw: check for bucket resharding  when adding an object

Signed-off-by: Orit Wasserman <owasserm@redhat.com>
8 years agorgw: add a function to add a bucket to the resharding queue
Orit Wasserman [Thu, 18 May 2017 19:47:12 +0000 (22:47 +0300)]
rgw: add a function to add a bucket to the resharding queue

Signed-off-by: Orit Wasserman <owasserm@redhat.com>
8 years agorgw: add a check_bucket_shards to the quota
Orit Wasserman [Thu, 18 May 2017 04:01:35 +0000 (07:01 +0300)]
rgw: add a check_bucket_shards to the quota

Signed-off-by: Orit Wasserman <owasserm@redhat.com>
8 years agorgw: moved reshard_bucket into RGWReshard
Orit Wasserman [Sun, 14 May 2017 08:03:22 +0000 (11:03 +0300)]
rgw: moved reshard_bucket into RGWReshard

Signed-off-by: Orit Wasserman <owasserm@redhat.com>
8 years agorgw: remove cct from RGWReshard and BucketIndexLockGuard
Orit Wasserman [Sun, 14 May 2017 06:05:49 +0000 (09:05 +0300)]
rgw: remove cct from RGWReshard and BucketIndexLockGuard

Signed-off-by: Orit Wasserman <owasserm@redhat.com>
8 years agorgw: add resharding thread
Orit Wasserman [Sun, 14 May 2017 05:34:04 +0000 (08:34 +0300)]
rgw: add resharding thread

Signed-off-by: Orit Wasserman <owasserm@redhat.com>
8 years agorgw: store new num shards in bucket index reshard entry
Yehuda Sadeh [Wed, 17 May 2017 23:40:16 +0000 (16:40 -0700)]
rgw: store new num shards in bucket index reshard entry

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: fix deletion of index completion object
Yehuda Sadeh [Wed, 17 May 2017 21:50:53 +0000 (14:50 -0700)]
rgw: fix deletion of index completion object

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: reshard complete handling, use multiple locks
Yehuda Sadeh [Wed, 17 May 2017 01:10:15 +0000 (18:10 -0700)]
rgw: reshard complete handling, use multiple locks

to reduce contention. Also, fix completions cleanup.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: clean up index completions on shutdown
Yehuda Sadeh [Tue, 16 May 2017 23:33:17 +0000 (16:33 -0700)]
rgw: clean up index completions on shutdown

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: update data log after index completion reshard handling
Yehuda Sadeh [Tue, 16 May 2017 22:30:32 +0000 (15:30 -0700)]
rgw: update data log after index completion reshard handling

Also rearrange code a bit.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: guard resharding in async completions
Yehuda Sadeh [Sat, 13 May 2017 00:07:04 +0000 (17:07 -0700)]
rgw: guard resharding in async completions

Catch return value from async index completions, resend operations
synchronously on a separate worker thread if needed.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: reshard guard for versioned operations
Yehuda Sadeh [Fri, 12 May 2017 21:44:06 +0000 (14:44 -0700)]
rgw: reshard guard for versioned operations

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agocls/rgw: changes to support reshard guard on olh bi ops
Yehuda Sadeh [Fri, 12 May 2017 18:47:54 +0000 (11:47 -0700)]
cls/rgw: changes to support reshard guard on olh bi ops

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: handle reshard wait logic in cancel() too
Yehuda Sadeh [Thu, 11 May 2017 22:41:15 +0000 (15:41 -0700)]
rgw: handle reshard wait logic in cancel() too

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: fix update_bucket_id, reshard blocking logic
Yehuda Sadeh [Thu, 11 May 2017 17:39:26 +0000 (10:39 -0700)]
rgw: fix update_bucket_id, reshard blocking logic

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw_admin: add rgw-admin reshard status command and initial blocking logic
Yehuda Sadeh [Wed, 10 May 2017 23:58:41 +0000 (16:58 -0700)]
rgw_admin: add rgw-admin reshard status command and initial blocking logic

A command that returns the reshard status field on the bucket index objects (all
shards).
Also, initial implementation of identifying and blocking while reshard in
progress.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: more detailed resharding status kept in bucket header
Yehuda Sadeh [Wed, 10 May 2017 18:46:57 +0000 (11:46 -0700)]
rgw: more detailed resharding status kept in bucket header

So that we can differentiate between in-progress and complete status.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: a few fixes
Yehuda Sadeh [Wed, 10 May 2017 16:39:55 +0000 (09:39 -0700)]
rgw: a few fixes

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: mark source bucket shards when starting reshard
Yehuda Sadeh [Tue, 9 May 2017 22:38:57 +0000 (15:38 -0700)]
rgw: mark source bucket shards when starting reshard

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: move resharding code to BucketReshard class
Yehuda Sadeh [Tue, 9 May 2017 22:19:10 +0000 (15:19 -0700)]
rgw: move resharding code to BucketReshard class

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: split per-bucket resharding logic out from general resharding
Yehuda Sadeh [Tue, 9 May 2017 20:41:30 +0000 (13:41 -0700)]
rgw: split per-bucket resharding logic out from general resharding

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: revert some reshard blocking logic
Yehuda Sadeh [Mon, 8 May 2017 22:42:11 +0000 (15:42 -0700)]
rgw: revert some reshard blocking logic

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agocls/rgw: create an objclass method to guard in-progress resharding
Yehuda Sadeh [Mon, 8 May 2017 21:43:37 +0000 (14:43 -0700)]
cls/rgw: create an objclass method to guard in-progress resharding

This method will be called on the bucket index shard.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: RGWReshard update to new cls API
Orit Wasserman [Mon, 8 May 2017 13:41:35 +0000 (16:41 +0300)]
rgw: RGWReshard update to new cls API

Signed-off-by: Orit Wasserman <owasserm@redhat.com>
8 years agocls/rgw: adjust types and ops
Yehuda Sadeh [Thu, 4 May 2017 22:11:09 +0000 (15:11 -0700)]
cls/rgw: adjust types and ops

 - don't keep data bufferlist in struct cls_rgw_bucket_instance_entry
 - remove rgw_get_bucket_instance

We need to keep the reshard info as part of the bucket index header (for
each source bucket shard), and not in a separate object. Otherwise it'll
be impossible to have the resharding check atomic as part of the regular
bucket index updates.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agocls/rgw: minor changes
Yehuda Sadeh [Thu, 4 May 2017 20:50:26 +0000 (13:50 -0700)]
cls/rgw: minor changes

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agocls/rgw: generate_reshard_key, change output param
Yehuda Sadeh [Thu, 4 May 2017 20:39:54 +0000 (13:39 -0700)]
cls/rgw: generate_reshard_key, change output param

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agocls/rgw: return default header if not initialized
Yehuda Sadeh [Thu, 4 May 2017 20:36:38 +0000 (13:36 -0700)]
cls/rgw: return default header if not initialized

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agorgw: cls_reshard_get remove unneeded check for bufferlist length
Orit Wasserman [Mon, 8 May 2017 05:06:48 +0000 (08:06 +0300)]
rgw: cls_reshard_get remove unneeded check for bufferlist length

Signed-off-by: Orit Wasserman <owasserm@redhat.com>
8 years agorgw: get_bucket_header will return -ENOENT when there is no header
Orit Wasserman [Wed, 3 May 2017 08:48:49 +0000 (11:48 +0300)]
rgw: get_bucket_header will return -ENOENT when there is no header

Signed-off-by: Orit Wasserman <owasserm@redhat.com>
8 years agorgw: add guard class for bucket index lock
Orit Wasserman [Mon, 1 May 2017 06:24:19 +0000 (09:24 +0300)]
rgw: add guard class for bucket index lock

Signed-off-by: Orit Wasserman <owasserm@redhat.com>
8 years agorgw: add reshard_pool_ctx
Orit Wasserman [Mon, 1 May 2017 06:23:34 +0000 (09:23 +0300)]
rgw: add reshard_pool_ctx

Signed-off-by: Orit Wasserman <owasserm@redhat.com>
8 years agorgw: check for exisiting entries in cls_rgw_reshard_add
Orit Wasserman [Sun, 30 Apr 2017 07:16:18 +0000 (10:16 +0300)]
rgw: check for exisiting entries in cls_rgw_reshard_add

Signed-off-by: Orit Wasserman <owasserm@redhat.com>
8 years agorgw: use pointer for is_truncated
Orit Wasserman [Sun, 30 Apr 2017 05:31:30 +0000 (08:31 +0300)]
rgw: use pointer for is_truncated

Signed-off-by: Orit Wasserman <owasserm@redhat.com>
8 years agorgw: cls_rgw_reshard use helper function the generate key
Orit Wasserman [Fri, 28 Apr 2017 13:59:52 +0000 (16:59 +0300)]
rgw: cls_rgw_reshard use helper function the generate key

Signed-off-by: Orit Wasserman <owasserm@redhat.com>
8 years agorgw: limit op.max and add extra entry to handle tuncation in cls_rgw_reshard_list
Orit Wasserman [Fri, 28 Apr 2017 10:13:07 +0000 (13:13 +0300)]
rgw: limit op.max and add extra entry to handle tuncation in cls_rgw_reshard_list

Signed-off-by: Orit Wasserman <owasserm@redhat.com>
8 years agorgw: use .rgw.log:reshard pool for resharding
Orit Wasserman [Fri, 28 Apr 2017 10:03:11 +0000 (13:03 +0300)]
rgw: use .rgw.log:reshard pool for resharding

Signed-off-by: Orit Wasserman <owasserm@redhat.com>
8 years agorgw: remove RGWReshard::get_head
Orit Wasserman [Thu, 27 Apr 2017 20:53:37 +0000 (23:53 +0300)]
rgw: remove RGWReshard::get_head

Signed-off-by: Orit Wasserman <owasserm@redhat.com>