From 4619a82eb90ca7b8ea129897dac1753dbfa54e61 Mon Sep 17 00:00:00 2001 From: Abhishek Lekshmanan Date: Thu, 15 Aug 2019 17:25:22 +0200 Subject: [PATCH] rgw: Remove rgw_num_rados_handles option This has been deprecated for some time and underlies much of the complexity of the RADOS service. Signed-off-by: Adam C. Emerson (cherry picked from commit 55180511e5e5a2d9965a1bad17218ee64e023484) Conflicts: PendingReleaseNotes updated to reflect current nautilus status --- PendingReleaseNotes | 13 +++++++------ doc/radosgw/config-ref.rst | 12 ------------ src/common/legacy_config_opts.h | 1 - src/rgw/rgw_rados.cc | 2 +- src/rgw/services/svc_rados.cc | 2 +- 5 files changed, 9 insertions(+), 21 deletions(-) diff --git a/PendingReleaseNotes b/PendingReleaseNotes index dadb5ad8bc570..131801d14de75 100644 --- a/PendingReleaseNotes +++ b/PendingReleaseNotes @@ -1,13 +1,14 @@ ->=14.2.1 +>=14.2.2 -------- -* Ceph now packages python bindings for python3.6 instead of - python3.4, because EPEL7 recently switched from python3.4 to - python3.6 as the native python3. see the `announcement _` - for more details on the background of this change. - * Nautilus-based librbd clients can now open images on Jewel clusters. +* The RGW "num_rados_handles" has been removed. + If you were using a value of "num_rados_handles" greater than 1 + multiply your current "objecter_inflight_ops" and + "objecter_inflight_op_bytes" paramaeters by the old + "num_rados_handles" to get the same throttle behavior. + 14.2.2 ------ diff --git a/doc/radosgw/config-ref.rst b/doc/radosgw/config-ref.rst index 37bb8eea9007e..0e20dfd5a24d7 100644 --- a/doc/radosgw/config-ref.rst +++ b/doc/radosgw/config-ref.rst @@ -157,18 +157,6 @@ instances or all radosgw-admin commands can be put into the ``[global]`` or the :Default: 100 threads. -``rgw num rados handles`` - -:Description: The number of `RADOS cluster handles`_ for Ceph Object Gateway. - Having a configurable number of RADOS handles is resulting in - significant performance boost for all types of workloads. Each RGW - worker thread would now get to pick a RADOS handle for its lifetime, - from the available bunch. - -:Type: Integer -:Default: ``1`` - - ``rgw num control oids`` :Description: The number of notification objects used for cache synchronization diff --git a/src/common/legacy_config_opts.h b/src/common/legacy_config_opts.h index f83a5ca4ebf39..340e740b4699a 100644 --- a/src/common/legacy_config_opts.h +++ b/src/common/legacy_config_opts.h @@ -1376,7 +1376,6 @@ OPTION(rgw_op_thread_timeout, OPT_INT) OPTION(rgw_op_thread_suicide_timeout, OPT_INT) OPTION(rgw_thread_pool_size, OPT_INT) OPTION(rgw_num_control_oids, OPT_INT) -OPTION(rgw_num_rados_handles, OPT_U32) OPTION(rgw_verify_ssl, OPT_BOOL) // should http_client try to verify ssl when sent https request /* The following are tunables for caches of RGW NFS (and other file diff --git a/src/rgw/rgw_rados.cc b/src/rgw/rgw_rados.cc index 22dd0f1782945..60134d8707d43 100644 --- a/src/rgw/rgw_rados.cc +++ b/src/rgw/rgw_rados.cc @@ -1410,7 +1410,7 @@ int RGWRados::init_rados() } } - auto handles = std::vector{static_cast(cct->_conf->rgw_num_rados_handles)}; + auto handles = std::vector{static_cast(1)}; for (auto& r : handles) { ret = r.init_with_context(cct); diff --git a/src/rgw/services/svc_rados.cc b/src/rgw/services/svc_rados.cc index db0855b197b98..4e95fe278cc35 100644 --- a/src/rgw/services/svc_rados.cc +++ b/src/rgw/services/svc_rados.cc @@ -44,7 +44,7 @@ static int init_ioctx(CephContext *cct, librados::Rados *rados, const rgw_pool& int RGWSI_RADOS::do_start() { - auto handles = std::vector{static_cast(cct->_conf->rgw_num_rados_handles)}; + auto handles = std::vector{static_cast(1)}; for (auto& r : handles) { int ret = r.init_with_context(cct); -- 2.39.5