Commit Graph

49368 Commits

Author SHA1 Message Date
Casey Bodley
02edcdd905 rgw-admin: update callers of get_log
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2016-02-18 14:04:20 -08:00
Casey Bodley
34ea6bcc85 rgw: add map of period_id -> RGWMetadataLog
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2016-02-18 14:04:20 -08:00
Casey Bodley
5b12ec0b7d rgw: add period id to metadata log oids
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2016-02-18 14:04:19 -08:00
Casey Bodley
699809e1fd rgw: RGWRemoteMetaLog passes period id with requests to master
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2016-02-18 14:04:19 -08:00
Casey Bodley
25771efa94 rgw: move sync_status into RGWRemoteMetaLog
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2016-02-18 14:04:19 -08:00
Casey Bodley
3c990d22f2 rgw: include period id in rgw_meta_sync_info
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2016-02-18 14:04:19 -08:00
Casey Bodley
ea9f0fc374 rgw: use std::move for strings in RGWFetchAllMetaCR
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2016-02-18 14:04:19 -08:00
Casey Bodley
fe681503a9 cmake: remove duplicate rgw source files
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2016-02-18 14:04:19 -08:00
Casey Bodley
1ebb55b286 rgw: remove RemoteMetaLog::fetch() and admin command
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2016-02-18 14:04:19 -08:00
Casey Bodley
be06128bfe rgw: remove unused RGWRemoteMetaLog::list_shards
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2016-02-18 14:04:18 -08:00
Casey Bodley
c13e7ee74a rgw: remove unused class RGWReadMDLogShardInfo
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2016-02-18 14:04:18 -08:00
Casey Bodley
10cdb8866b rgw: remove unused clone_shards() in metadata sync
clone_shards() was an exact duplicate for fetch()

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2016-02-18 14:04:18 -08:00
Casey Bodley
1999c57d8c rgw: remove unneeded RGWRados arg for RGWMetadataLog
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2016-02-18 14:04:18 -08:00
Orit Wasserman
3cb199a457 rgw: we need to clear the id in create_default in case of a race
Signed-off-by: Orit Wasserman <owasserm@redhat.com>
2016-02-18 14:04:18 -08:00
Yehuda Sadeh
10cda14b51 rgw-admin: command to list sync error logs
$ radosgw-admin sync error list

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-18 14:04:18 -08:00
Yehuda Sadeh
288501429e rgw: set quota when converting regionmap
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-18 13:56:51 -08:00
Yehuda Sadeh
1b6ec189b4 rgw: cleanup
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-15 15:16:28 -08:00
Yehuda Sadeh
3c28f19897 rgw: don't try to parse some forwarded requests
Not every forwarded requests are expected to get a json response,
don't pass the parser when not needed.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-15 15:07:21 -08:00
Yehuda Sadeh
842140b3e8 rgw: adjust data sync async notification locking
This is a workaround to avoid issues related to the way lockdep works

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-15 14:50:48 -08:00
Yehuda Sadeh
00d396e33a rgw: don't use s->bucket for metadata api path entry
Fixes #14549

s->bucket is only initialized at the object store handler (post auth
callback). We don't want to initialize it for other cases because
it's not a real bucket, and initializing it will require going through
the authorization path for this 'bucket'.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-12 14:03:20 -08:00
Casey Bodley
865c76c360 rgw: add drain_all() after collect() in sync crs
this fixes a segfault caused by parent stacks completing while there are
child stacks outstanding

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2016-02-12 13:03:33 -08:00
Yehuda Sadeh
447c80611a rgw: adjust interfaces following rebase
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-12 13:03:33 -08:00
Yehuda Sadeh
9abb8e621e rgw: more error handling
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-12 13:03:32 -08:00
Yehuda Sadeh
0a0d437b96 rgw: fail when trying to commit period if no master zone configured
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-12 13:03:32 -08:00
Yehuda Sadeh
7bbbec02c0 rgw: add error_logger to sync env
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-12 13:03:32 -08:00
Yehuda Sadeh
2d52ab31d5 rgw: data sync env cleanup
pass RGWDataSyncEnv container object instead of passing around multiple
params. (incomplete)

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-12 13:03:32 -08:00
Yehuda Sadeh
744f3844fa rgw: add a timelog add operation cr
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-11 16:13:56 -08:00
Yehuda Sadeh
7a78b0ef14 rgw: replace #warning with a comment
not going to fix it now

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-11 16:13:56 -08:00
Yehuda Sadeh
5c2b519d4a rgw: fix do_curl_wait() if curl_multi_wait() not defined
needed for older systems

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-11 16:13:56 -08:00
Orit Wasserman
b2f7438dba rgw: fix create_default to handle EEXIST
Signed-off-by: Orit Wasserman <owasserm@redhat.com>
2016-02-11 16:13:56 -08:00
Casey Bodley
79d6952f24 rgw: metadata and data sync share RGWAsyncRadosProcessor
each RGWAsyncRadosProcessor creates 32 worker threads by default, so we
should only create one instance and share it between callers

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2016-02-11 16:13:55 -08:00
Orit Wasserman
2360e165a1 rgw: fix RGWSystemMetaObj::init to handle perdefined name correctly
Signed-off-by: Orit Wasserman <owasserm@redhat.com>
2016-02-11 16:13:55 -08:00
Orit Wasserman
4342bd6b8e rgw: add error messages to realm::create
Signed-off-by: Orit Wasserman <owasserm@redhat.com>
2016-02-11 16:13:55 -08:00
Orit Wasserman
67fccabcf2 radosgw-admin: realm pull should not fail if the realm exists
Signed-off-by: Orit Wasserman <owasserm@redhat.com>
2016-02-11 16:13:55 -08:00
Orit Wasserman
33489473eb rgw: use exclusive flag for store_name in RGWSystemMetaObj::create
Signed-off-by: Orit Wasserman <owasserm@redhat.com>
2016-02-11 16:13:55 -08:00
Yehuda Sadeh
fd46b2d92a rgw: hold reference to req_completion while calling aio_operate()
This is a workaround to fix issue with aio_operate() racing with the
request completion. This way we make sure completion->release() is
called after aio_operate() finishes.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-11 16:13:55 -08:00
Yehuda Sadeh
22faa002a7 rgw: link_pending_requests() fixes
set aside the list of reqs we need to finish, and only then iterate
through that list and finish. Otherwise we corrupt the reqs map. Also
clear reqs map on shutdown so that we don't end up clearing it twice
in certain cases.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-11 16:13:55 -08:00
Yehuda Sadeh
ee9f206504 rgw: more of dropping async ops reference
instead of deleting. This was missing from a previous commit.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-11 16:13:54 -08:00
Yehuda Sadeh
0ce5bc5aa6 rgw: fix a typo
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-11 16:13:54 -08:00
Orit Wasserman
51eb2fad80 rgw: in create_default read zone_params in case we raced with another
Signed-off-by: Orit Wasserman <owasserm@redhat.com>
2016-02-11 16:13:54 -08:00
Orit Wasserman
847ec96097 radosgw-admin: add missing break in key rm command
Signed-off-by: Orit Wasserman <owasserm@redhat.com>
2016-02-11 16:13:54 -08:00
Yehuda Sadeh
b243075a29 rgw: fix a few more leaks
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-11 16:13:54 -08:00
Yehuda Sadeh
45c5327749 rgw: safe disposal of async processors
the async processor might out its container cr, need to refcount.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-11 16:13:54 -08:00
Casey Bodley
defb4d3ff2 rgw: shorten name of RGWAsyncRadosProcessor thread pool
threads now call pthread_setname_np(), and have to enforce a
16-character limit on the names. this fixes the assertion:

ceph/src/common/Thread.cc: 156: FAILED assert(strlen(name) < 16)

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2016-02-11 16:13:54 -08:00
Yehuda Sadeh
8bcdb77d9a rgw: stop meta sync handler when going down
it needed to check internally whether it was going down

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-11 16:13:53 -08:00
Yehuda Sadeh
efc2dfcc64 rgw: more leak fixes
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-11 16:13:53 -08:00
Yehuda Sadeh
47db646f52 rgw: minor cleanup
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-11 16:13:53 -08:00
Yehuda Sadeh
5363017e25 rgw: reorder RGWRados shutdown
dependency order fixes

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-11 16:13:53 -08:00
Yehuda Sadeh
9e2569e205 rgw: clear stack ops when unwinding last op
So that we don't drop the last one's reference twice

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-11 16:13:53 -08:00
Yehuda Sadeh
46f1ee548d rgw: more leak fixes
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-11 16:13:53 -08:00