Skip to content

Commit

Permalink
fix compilation
Browse files Browse the repository at this point in the history
  • Loading branch information
yehudasa committed Dec 14, 2016
1 parent 688613f commit 6ff550a
Show file tree
Hide file tree
Showing 12 changed files with 100 additions and 84 deletions.
22 changes: 17 additions & 5 deletions src/rgw/rgw_admin.cc
Expand Up @@ -1238,7 +1238,7 @@ int check_obj_locator_underscore(RGWBucketInfo& bucket_info, rgw_obj& obj, rgw_o
string status = (needs_fixing ? "needs_fixing" : "ok");

if ((needs_fixing || remove_bad) && fix) {
ret = store->fix_head_obj_locator(obj.bucket, needs_fixing, remove_bad, key);
ret = store->fix_head_obj_locator(bucket_info, needs_fixing, remove_bad, key);
if (ret < 0) {
cerr << "ERROR: fix_head_object_locator() returned ret=" << ret << std::endl;
goto done;
Expand All @@ -1265,7 +1265,7 @@ int check_obj_tail_locator_underscore(RGWBucketInfo& bucket_info, rgw_obj& obj,
bool needs_fixing;
string status;

int ret = store->fix_tail_obj_locator(obj.bucket, key, fix, &needs_fixing);
int ret = store->fix_tail_obj_locator(bucket_info, key, fix, &needs_fixing);
if (ret < 0) {
cerr << "ERROR: fix_tail_object_locator_underscore() returned ret=" << ret << std::endl;
status = "failed";
Expand Down Expand Up @@ -4567,9 +4567,15 @@ int main(int argc, char **argv)
}

if (opt_cmd == OPT_OLH_GET) {
RGWBucketInfo bucket_info;
int ret = init_bucket(tenant, bucket_name, bucket_id, bucket_info, bucket);
if (ret < 0) {
cerr << "ERROR: could not init bucket: " << cpp_strerror(-ret) << std::endl;
return -ret;
}
RGWOLHInfo olh;
rgw_obj obj(bucket, object);
int ret = store->get_olh(obj, &olh);
ret = store->get_olh(bucket_info, obj, &olh);
if (ret < 0) {
cerr << "ERROR: failed reading olh: " << cpp_strerror(-ret) << std::endl;
return -ret;
Expand All @@ -4579,6 +4585,12 @@ int main(int argc, char **argv)
}

if (opt_cmd == OPT_OLH_READLOG) {
RGWBucketInfo bucket_info;
int ret = init_bucket(tenant, bucket_name, bucket_id, bucket_info, bucket);
if (ret < 0) {
cerr << "ERROR: could not init bucket: " << cpp_strerror(-ret) << std::endl;
return -ret;
}
map<uint64_t, vector<rgw_bucket_olh_log_entry> > log;
bool is_truncated;

Expand All @@ -4587,12 +4599,12 @@ int main(int argc, char **argv)

RGWObjState *state;

int ret = store->get_obj_state(&rctx, obj, &state, false); /* don't follow olh */
ret = store->get_obj_state(&rctx, bucket_info, obj, &state, false); /* don't follow olh */
if (ret < 0) {
return -ret;
}

ret = store->bucket_index_read_olh_log(*state, obj, 0, &log, &is_truncated);
ret = store->bucket_index_read_olh_log(bucket_info, *state, obj, 0, &log, &is_truncated);
if (ret < 0) {
cerr << "ERROR: failed reading olh: " << cpp_strerror(-ret) << std::endl;
return -ret;
Expand Down
4 changes: 2 additions & 2 deletions src/rgw/rgw_bucket.cc
Expand Up @@ -647,7 +647,7 @@ int rgw_remove_bucket_bypass_gc(RGWRados *store, rgw_bucket& bucket,
RGWObjState *astate = NULL;
rgw_obj obj(bucket, (*it).key);

ret = store->get_obj_state(&obj_ctx, obj, &astate, NULL);
ret = store->get_obj_state(&obj_ctx, info, obj, &astate, NULL);
if (ret == -ENOENT) {
dout(1) << "WARNING: cannot find obj state for obj " << obj.get_oid() << dendl;
continue;
Expand All @@ -662,7 +662,7 @@ int rgw_remove_bucket_bypass_gc(RGWRados *store, rgw_bucket& bucket,
RGWObjManifest::obj_iterator miter = manifest.obj_begin();
rgw_obj head_obj = manifest.get_obj();
rgw_raw_obj raw_head_obj;
store->obj_to_raw(head_obj, &raw_head_obj);
store->obj_to_raw(info.placement_rule, head_obj, &raw_head_obj);


for (; miter != manifest.obj_end() && max_aio--; ++miter) {
Expand Down
10 changes: 5 additions & 5 deletions src/rgw/rgw_cr_rados.cc
Expand Up @@ -572,7 +572,7 @@ int RGWAsyncRemoveObj::_send_request()

RGWObjState *state;

int ret = store->get_obj_state(&obj_ctx, obj, &state);
int ret = store->get_obj_state(&obj_ctx, bucket_info, obj, &state);
if (ret < 0) {
ldout(store->ctx(), 20) << __func__ << "(): get_obj_state() obj=" << obj << " returned ret=" << ret << dendl;
return ret;
Expand Down Expand Up @@ -728,17 +728,17 @@ int RGWRadosTimelogTrimCR::request_complete()
int RGWAsyncStatObj::_send_request()
{
rgw_raw_obj raw_obj;
store->obj_to_raw(obj, &raw_obj);
store->obj_to_raw(bucket_info.placement_rule, obj, &raw_obj);
return store->raw_obj_stat(raw_obj, psize, pmtime, pepoch,
nullptr, nullptr, objv_tracker);
}

RGWStatObjCR::RGWStatObjCR(RGWAsyncRadosProcessor *async_rados, RGWRados *store,
const rgw_obj& obj, uint64_t *psize,
const RGWBucketInfo& _bucket_info, const rgw_obj& obj, uint64_t *psize,
real_time* pmtime, uint64_t *pepoch,
RGWObjVersionTracker *objv_tracker)
: RGWSimpleCoroutine(store->ctx()), store(store), async_rados(async_rados),
obj(obj), psize(psize), pmtime(pmtime), pepoch(pepoch),
bucket_info(_bucket_info), obj(obj), psize(psize), pmtime(pmtime), pepoch(pepoch),
objv_tracker(objv_tracker)
{
}
Expand All @@ -754,7 +754,7 @@ void RGWStatObjCR::request_cleanup()
int RGWStatObjCR::send_request()
{
req = new RGWAsyncStatObj(this, stack->create_completion_notifier(),
store, obj, psize, pmtime, pepoch, objv_tracker);
store, bucket_info, obj, psize, pmtime, pepoch, objv_tracker);
async_rados->queue(req);
return 0;
}
Expand Down
6 changes: 4 additions & 2 deletions src/rgw/rgw_cr_rados.h
Expand Up @@ -1085,6 +1085,7 @@ class RGWRadosTimelogTrimCR : public RGWSimpleCoroutine {

class RGWAsyncStatObj : public RGWAsyncRadosRequest {
RGWRados *store;
RGWBucketInfo bucket_info;
rgw_obj obj;
uint64_t *psize;
real_time *pmtime;
Expand All @@ -1094,7 +1095,7 @@ class RGWAsyncStatObj : public RGWAsyncRadosRequest {
int _send_request() override;
public:
RGWAsyncStatObj(RGWCoroutine *caller, RGWAioCompletionNotifier *cn, RGWRados *store,
const rgw_obj& obj, uint64_t *psize = nullptr,
const RGWBucketInfo& _bucket_info, const rgw_obj& obj, uint64_t *psize = nullptr,
real_time *pmtime = nullptr, uint64_t *pepoch = nullptr,
RGWObjVersionTracker *objv_tracker = nullptr)
: RGWAsyncRadosRequest(caller, cn), store(store), obj(obj), psize(psize),
Expand All @@ -1104,6 +1105,7 @@ class RGWAsyncStatObj : public RGWAsyncRadosRequest {
class RGWStatObjCR : public RGWSimpleCoroutine {
RGWRados *store;
RGWAsyncRadosProcessor *async_rados;
RGWBucketInfo bucket_info;
rgw_obj obj;
uint64_t *psize;
real_time *pmtime;
Expand All @@ -1112,7 +1114,7 @@ class RGWStatObjCR : public RGWSimpleCoroutine {
RGWAsyncStatObj *req = nullptr;
public:
RGWStatObjCR(RGWAsyncRadosProcessor *async_rados, RGWRados *store,
const rgw_obj& obj, uint64_t *psize = nullptr,
const RGWBucketInfo& _bucket_info, const rgw_obj& obj, uint64_t *psize = nullptr,
real_time* pmtime = nullptr, uint64_t *pepoch = nullptr,
RGWObjVersionTracker *objv_tracker = nullptr);
~RGWStatObjCR() {
Expand Down
6 changes: 3 additions & 3 deletions src/rgw/rgw_dencoder.cc
Expand Up @@ -194,8 +194,8 @@ void RGWObjManifest::get_implicit_location(uint64_t cur_part_id, uint64_t cur_st
}
}

if (!tail_bucket.name.empty()) {
loc.bucket = tail_bucket.bucket;
if (!tail_placement.bucket.name.empty()) {
loc.bucket = tail_placement.bucket;
} else {
loc.bucket = obj.bucket;
}
Expand All @@ -204,7 +204,7 @@ void RGWObjManifest::get_implicit_location(uint64_t cur_part_id, uint64_t cur_st
// to get the right shadow object location
loc.key.set_instance(tail_instance);

location->set_placement_rule(tail_bucket.placement_rule);
location->set_placement_rule(tail_placement.placement_rule);
*location = loc;
}

Expand Down
9 changes: 7 additions & 2 deletions src/rgw/rgw_json_enc.cc
Expand Up @@ -80,6 +80,12 @@ void RGWObjManifestRule::dump(Formatter *f) const
encode_json("override_prefix", override_prefix, f);
}

void rgw_bucket_placement::dump(Formatter *f) const
{
encode_json("bucket", bucket, f);
encode_json("placement_rule", placement_rule, f);
}

void RGWObjManifest::dump(Formatter *f) const
{
map<uint64_t, RGWObjManifestPart>::const_iterator iter = objs.begin();
Expand All @@ -96,9 +102,9 @@ void RGWObjManifest::dump(Formatter *f) const
::encode_json("head_size", head_size, f);
::encode_json("max_head_size", max_head_size, f);
::encode_json("prefix", prefix, f);
::encode_json("tail_bucket", tail_bucket, f);
::encode_json("rules", rules, f);
::encode_json("tail_instance", tail_instance, f);
::encode_json("tail_placement", tail_placement, f);
}

void rgw_log_entry::dump(Formatter *f) const
Expand Down Expand Up @@ -799,7 +805,6 @@ void rgw_obj::dump(Formatter *f) const
{
encode_json("bucket", bucket, f);
encode_json("key", key, f);
encode_json("placement_id", placement_id, f);
}

void RGWDefaultSystemMetaObjInfo::dump(Formatter *f) const {
Expand Down
4 changes: 2 additions & 2 deletions src/rgw/rgw_lc.cc
Expand Up @@ -280,7 +280,7 @@ int RGWLC::bucket_lc_process(string& shard_id)
RGWObjectCtx rctx(store);
rgw_obj obj(bucket_info.bucket, key);
RGWObjState *state;
int ret = store->get_obj_state(&rctx, obj, &state, false);
int ret = store->get_obj_state(&rctx, bucket_info, obj, &state, false);
if (ret < 0) {
return ret;
}
Expand Down Expand Up @@ -330,7 +330,7 @@ int RGWLC::bucket_lc_process(string& shard_id)
RGWObjectCtx rctx(store);
rgw_obj obj(bucket_info.bucket, key);
RGWObjState *state;
int ret = store->get_obj_state(&rctx, obj, &state, false);
int ret = store->get_obj_state(&rctx, bucket_info, obj, &state, false);
if (ret < 0) {
return ret;
}
Expand Down
14 changes: 7 additions & 7 deletions src/rgw/rgw_op.cc
Expand Up @@ -1272,7 +1272,7 @@ int RGWGetObj::get_data_cb(bufferlist& bl, off_t bl_ofs, off_t bl_len)
/* garbage collection related handling */
utime_t start_time = ceph_clock_now(s->cct);
if (start_time > gc_invalidate_time) {
int r = store->defer_gc(s->obj_ctx, obj);
int r = store->defer_gc(s->obj_ctx, s->bucket_info, obj);
if (r < 0) {
dout(0) << "WARNING: could not defer gc entry for obj" << dendl;
}
Expand Down Expand Up @@ -2632,7 +2632,7 @@ int RGWPutObjProcessor_Multipart::prepare(RGWRados *store, string *oid_rand)

manifest.set_multipart_part_rule(store->ctx()->_conf->rgw_obj_stripe_size, num);

int r = manifest_gen.create_begin(store->ctx(), &manifest, bucket, target_obj);
int r = manifest_gen.create_begin(store->ctx(), &manifest, s->bucket_info.placement_rule, bucket, target_obj);
if (r < 0) {
return r;
}
Expand Down Expand Up @@ -2721,7 +2721,7 @@ int RGWPutObjProcessor_Multipart::do_complete(size_t accounted_size,

rgw_raw_obj raw_meta_obj;

store->obj_to_raw(meta_obj, &raw_meta_obj);
store->obj_to_raw(s->bucket_info.placement_rule, meta_obj, &raw_meta_obj);

r = store->omap_set(raw_meta_obj, p, bl);

Expand Down Expand Up @@ -3543,7 +3543,7 @@ void RGWPutMetadataObject::execute()
}
}

op_ret = store->set_attrs(s->obj_ctx, obj, attrs, &rmattrs);
op_ret = store->set_attrs(s->obj_ctx, s->bucket_info, obj, attrs, &rmattrs);
}

int RGWDeleteObj::handle_slo_manifest(bufferlist& bl)
Expand Down Expand Up @@ -4133,7 +4133,7 @@ void RGWPutACLs::execute()
return;

attrs[RGW_ATTR_ACL] = bl;
op_ret = store->set_attrs(s->obj_ctx, obj, attrs, NULL);
op_ret = store->set_attrs(s->obj_ctx, s->bucket_info, obj, attrs, NULL);
} else {
attrs = s->bucket_attrs;
attrs[RGW_ATTR_ACL] = bl;
Expand Down Expand Up @@ -4594,7 +4594,7 @@ static int list_multipart_parts(RGWRados *store, struct req_state *s,
obj.set_in_extra_data(true);

rgw_raw_obj raw_obj;
store->obj_to_raw(obj, &raw_obj);
store->obj_to_raw(s->bucket_info.placement_rule, obj, &raw_obj);

bool sorted_omap = is_v2_upload_id(upload_id) && !assume_unsorted;

Expand Down Expand Up @@ -5428,7 +5428,7 @@ void RGWSetAttrs::execute()
store->set_atomic(s->obj_ctx, obj);

if (!s->object.empty()) {
op_ret = store->set_attrs(s->obj_ctx, obj, attrs, nullptr);
op_ret = store->set_attrs(s->obj_ctx, s->bucket_info, obj, attrs, nullptr);
} else {
for (auto& iter : attrs) {
s->bucket_attrs[iter.first] = std::move(iter.second);
Expand Down

0 comments on commit 6ff550a

Please sign in to comment.