From: Guang Yang Date: Tue, 3 Mar 2015 09:46:52 +0000 (+0000) Subject: rgw: do not pre-fetch data for HEAD requests X-Git-Tag: v9.0.0~214^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F3861%2Fhead;p=ceph.git rgw: do not pre-fetch data for HEAD requests Backport: hammer Signed-off-by: Guang Yang --- diff --git a/src/rgw/rgw_op.cc b/src/rgw/rgw_op.cc index 26238c91215c..c2a0f6a7d9c6 100644 --- a/src/rgw/rgw_op.cc +++ b/src/rgw/rgw_op.cc @@ -448,7 +448,8 @@ int RGWGetObj::verify_permission() { obj = rgw_obj(s->bucket, s->object); store->set_atomic(s->obj_ctx, obj); - store->set_prefetch_data(s->obj_ctx, obj); + if (get_data) + store->set_prefetch_data(s->obj_ctx, obj); if (!verify_object_permission(s, RGW_PERM_READ)) return -EACCES; diff --git a/src/rgw/rgw_op.h b/src/rgw/rgw_op.h index 577df8527041..832572713973 100644 --- a/src/rgw/rgw_op.h +++ b/src/rgw/rgw_op.h @@ -157,7 +157,7 @@ public: ret = 0; } - virtual bool prefetch_data() { return true; } + virtual bool prefetch_data() { return get_data; } void set_get_data(bool get_data) { this->get_data = get_data;