From ea096de1b4348dec67d795cd589df05f4ef534ec Mon Sep 17 00:00:00 2001 From: Piotr Sarna Date: Wed, 17 Mar 2021 14:46:34 +0100 Subject: [PATCH] service, transport: avoid using private storage_service fields ... in the transport controller. Instead, simple getters would suffice. Message-Id: <582a71d0c1b61edf0107f5a2ef96536c395972d0.1615988516.git.sarna@scylladb.com> --- service/storage_service.hh | 5 ++++- transport/controller.cc | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/service/storage_service.hh b/service/storage_service.hh index e65b430689..28bfb79af9 100644 --- a/service/storage_service.hh +++ b/service/storage_service.hh @@ -171,7 +171,6 @@ private: // It shouldn't be impossible to actively serialize two callers if the need // ever arise. bool _loading_new_sstables = false; - friend class cql_transport::controller; sstring _operation_in_progress; bool _force_remove_completion = false; bool _ms_stopped = false; @@ -264,6 +263,10 @@ public: gms::feature_service& features() { return _feature_service; } const gms::feature_service& features() const { return _feature_service; } + size_t service_memory_total() const { + return _service_memory_total; + } + semaphore& service_memory_limiter() { return _service_memory_limiter; } diff --git a/transport/controller.cc b/transport/controller.cc index 18f4bca5f8..33685876d0 100644 --- a/transport/controller.cc +++ b/transport/controller.cc @@ -69,8 +69,8 @@ future<> controller::do_start_server() { auto keepalive = cfg.rpc_keepalive(); cql_transport::cql_server_config cql_server_config; cql_server_config.timeout_config = make_timeout_config(cfg); - cql_server_config.max_request_size = service::get_local_storage_service()._service_memory_total; - cql_server_config.get_service_memory_limiter_semaphore = [ss = std::ref(service::get_storage_service())] () -> semaphore& { return ss.get().local()._service_memory_limiter; }; + cql_server_config.max_request_size = service::get_local_storage_service().service_memory_total(); + cql_server_config.get_service_memory_limiter_semaphore = [ss = std::ref(service::get_storage_service())] () -> semaphore& { return ss.get().local().service_memory_limiter(); }; cql_server_config.allow_shard_aware_drivers = cfg.enable_shard_aware_drivers(); cql_server_config.sharding_ignore_msb = cfg.murmur3_partitioner_ignore_msb_bits(); if (cfg.native_shard_aware_transport_port.is_set()) {