From: Yehuda Sadeh Date: Thu, 7 Jan 2016 22:16:27 +0000 (-0800) Subject: rgw: forward meta changes to master X-Git-Tag: v10.1.0~354^2~69 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=d52bf638975fe922185a3f2d11ed668bd63f6405;p=ceph.git rgw: forward meta changes to master (initial work) Signed-off-by: Yehuda Sadeh --- diff --git a/src/rgw/rgw_op.cc b/src/rgw/rgw_op.cc index 173e1f65acd..aa9b00545d7 100644 --- a/src/rgw/rgw_op.cc +++ b/src/rgw/rgw_op.cc @@ -37,6 +37,8 @@ using ceph::crypto::MD5; static string mp_ns = RGW_OBJ_NS_MULTIPART; static string shadow_ns = RGW_OBJ_NS_SHADOW; +static int forward_request_to_master(struct req_state *s, obj_version *objv, RGWRados *store, bufferlist& in_data, JSONParser *jp); + #define MULTIPART_UPLOAD_ID_PREFIX_LEGACY "2/" #define MULTIPART_UPLOAD_ID_PREFIX "2~" // must contain a unique char that may not come up in gen_rand_alpha() @@ -1442,7 +1444,18 @@ void RGWSetBucketVersioning::pre_exec() void RGWSetBucketVersioning::execute() { + if (!store->is_meta_master()) { + bufferlist in_data; + JSONParser jp; + op_ret = forward_request_to_master(s, NULL, store, in_data, &jp); + if (op_ret < 0) { + ldout(s->cct, 20) << __func__ << "forward_request_to_master returned ret=" << op_ret << dendl; + } + return; + } + op_ret = get_params(); + if (op_ret < 0) return; diff --git a/src/rocksdb b/src/rocksdb index 00d6edf6a00..fa98456ccbd 160000 --- a/src/rocksdb +++ b/src/rocksdb @@ -1 +1 @@ -Subproject commit 00d6edf6a0080ac3961e56213ae962ec1d570daa +Subproject commit fa98456ccbd860120127ac2e91a2088fb222606e