From 793a0bbc6c8bedcf0ee5de51be687d760defcd57 Mon Sep 17 00:00:00 2001 From: HÃ¥vard Pettersen Date: Mon, 6 Mar 2023 11:42:42 +0000 Subject: use ref_counted in fnet also get rid of some cleanup functions on reference counted classes enable specifying low-level parameters to addref/subref (cnt/reserve) --- slobrok/src/apps/check_slobrok/check_slobrok.cpp | 2 +- slobrok/src/apps/sbcmd/sbcmd.cpp | 4 ++-- slobrok/src/tests/mirrorapi/mirrorapi.cpp | 4 ++-- .../src/tests/rpc_mapping_monitor/rpc_mapping_monitor_test.cpp | 6 +++--- slobrok/src/tests/standalone/standalone.cpp | 4 ++-- slobrok/src/tests/startsome/rpc_info.cpp | 8 ++++---- slobrok/src/vespa/slobrok/sbmirror.cpp | 8 ++++---- slobrok/src/vespa/slobrok/sbregister.cpp | 10 +++++----- slobrok/src/vespa/slobrok/server/exchange_manager.cpp | 2 +- slobrok/src/vespa/slobrok/server/managed_rpc_server.cpp | 8 ++++---- slobrok/src/vespa/slobrok/server/remote_slobrok.cpp | 10 +++++----- 11 files changed, 33 insertions(+), 33 deletions(-) (limited to 'slobrok') diff --git a/slobrok/src/apps/check_slobrok/check_slobrok.cpp b/slobrok/src/apps/check_slobrok/check_slobrok.cpp index 1b69588a9fc..4e10c9ba6fe 100644 --- a/slobrok/src/apps/check_slobrok/check_slobrok.cpp +++ b/slobrok/src/apps/check_slobrok/check_slobrok.cpp @@ -55,7 +55,7 @@ void Slobrok_Checker::finiRPC() { if (_target != nullptr) { - _target->SubRef(); + _target->internal_subref(); _target = nullptr; } if (_server) { diff --git a/slobrok/src/apps/sbcmd/sbcmd.cpp b/slobrok/src/apps/sbcmd/sbcmd.cpp index 64c29cd92a9..51c8b81aa77 100644 --- a/slobrok/src/apps/sbcmd/sbcmd.cpp +++ b/slobrok/src/apps/sbcmd/sbcmd.cpp @@ -65,7 +65,7 @@ void Slobrok_CMD::finiRPC() { if (_target != nullptr) { - _target->SubRef(); + _target->internal_subref(); _target = nullptr; } if (_server) { @@ -181,7 +181,7 @@ Slobrok_CMD::main(int argc, char **argv) } } } - req->SubRef(); + req->internal_subref(); finiRPC(); return 0; } diff --git a/slobrok/src/tests/mirrorapi/mirrorapi.cpp b/slobrok/src/tests/mirrorapi/mirrorapi.cpp index 2e03ba52bd4..6dac6b22b05 100644 --- a/slobrok/src/tests/mirrorapi/mirrorapi.cpp +++ b/slobrok/src/tests/mirrorapi/mirrorapi.cpp @@ -66,8 +66,8 @@ Server::reg() FRT_Target *sb = _server.supervisor().GetTarget(_slobrokSpec.c_str()); sb->InvokeSync(req, 5.0); - sb->SubRef(); - req->SubRef(); + sb->internal_subref(); + req->internal_subref(); } diff --git a/slobrok/src/tests/rpc_mapping_monitor/rpc_mapping_monitor_test.cpp b/slobrok/src/tests/rpc_mapping_monitor/rpc_mapping_monitor_test.cpp index 13db95eb35c..0493a43adf3 100644 --- a/slobrok/src/tests/rpc_mapping_monitor/rpc_mapping_monitor_test.cpp +++ b/slobrok/src/tests/rpc_mapping_monitor/rpc_mapping_monitor_test.cpp @@ -21,11 +21,11 @@ struct Server : FRT_Invokable { FNET_Connection *last_conn; void set_last_conn(FNET_Connection *conn) { if (last_conn) { - last_conn->SubRef(); + last_conn->internal_subref(); } last_conn = conn; if (last_conn) { - last_conn->AddRef(); + last_conn->internal_addref(); } } Server(fnet::TimeTools::SP time_tools) @@ -210,7 +210,7 @@ TEST_F(RpcMappingMonitorTest, up_connection_is_reused) { a.last_conn = nullptr; EXPECT_TRUE(debugger.step_until([&]() { return (a.last_conn); })); EXPECT_EQ(a.last_conn, my_conn); - my_conn->SubRef(); + my_conn->internal_subref(); EXPECT_EQ(hist.map[foo_a].state(), State::UP); } diff --git a/slobrok/src/tests/standalone/standalone.cpp b/slobrok/src/tests/standalone/standalone.cpp index 33813fceb3a..653e4c64b0e 100644 --- a/slobrok/src/tests/standalone/standalone.cpp +++ b/slobrok/src/tests/standalone/standalone.cpp @@ -77,7 +77,7 @@ private: public: SubReferer(T* &t) : _t(t) {} ~SubReferer() { - if (_t != nullptr) _t->SubRef(); + if (_t != nullptr) _t->internal_subref(); } }; @@ -134,7 +134,7 @@ TEST("standalone") { } fprintf(stderr, "ping failed [retry %d]\n", retry); std::this_thread::sleep_for(200ms); - sb->SubRef(); + sb->internal_subref(); sb = orb.GetTarget(18541); } ASSERT_TRUE(checkOk(req)); diff --git a/slobrok/src/tests/startsome/rpc_info.cpp b/slobrok/src/tests/startsome/rpc_info.cpp index a37cfa24889..be6d59f6a81 100644 --- a/slobrok/src/tests/startsome/rpc_info.cpp +++ b/slobrok/src/tests/startsome/rpc_info.cpp @@ -13,16 +13,16 @@ public: void GetReq(FRT_RPCRequest **req, FRT_Supervisor *supervisor) { if ((*req) != nullptr) - (*req)->SubRef(); + (*req)->internal_subref(); (*req) = supervisor->AllocRPCRequest(); } void FreeReqs(FRT_RPCRequest *r1, FRT_RPCRequest *r2) { if (r1 != nullptr) - r1->SubRef(); + r1->internal_subref(); if (r2 != nullptr) - r2->SubRef(); + r2->internal_subref(); } void DumpMethodInfo(const char *indent, FRT_RPCRequest *info, @@ -123,7 +123,7 @@ public: m_list->GetErrorMessage()); } FreeReqs(m_list, info); - target->SubRef(); + target->internal_subref(); return 0; } }; diff --git a/slobrok/src/vespa/slobrok/sbmirror.cpp b/slobrok/src/vespa/slobrok/sbmirror.cpp index 62d288d40dc..3936b4dac4c 100644 --- a/slobrok/src/vespa/slobrok/sbmirror.cpp +++ b/slobrok/src/vespa/slobrok/sbmirror.cpp @@ -44,10 +44,10 @@ MirrorAPI::~MirrorAPI() _configurator.reset(0); if (_req != 0) { _req->Abort(); - _req->SubRef(); + _req->internal_subref(); } if (_target != 0) { - _target->SubRef(); + _target->internal_subref(); } } @@ -208,7 +208,7 @@ MirrorAPI::handleReconfig() std::string cps = _slobrokSpecs.logString(); LOG(warning, "current server %s not in list of location brokers: %s", _currSlobrok.c_str(), cps.c_str()); - _target->SubRef(); + _target->internal_subref(); _target = 0; } } @@ -224,7 +224,7 @@ MirrorAPI::handleReqDone() if (reconn) { if (_target != 0) { - _target->SubRef(); + _target->internal_subref(); } _target = 0; } else { diff --git a/slobrok/src/vespa/slobrok/sbregister.cpp b/slobrok/src/vespa/slobrok/sbregister.cpp index 925d4ea62bc..e7db255c5d6 100644 --- a/slobrok/src/vespa/slobrok/sbregister.cpp +++ b/slobrok/src/vespa/slobrok/sbregister.cpp @@ -90,10 +90,10 @@ RegisterAPI::~RegisterAPI() _configurator.reset(0); if (_req != 0) { _req->Abort(); - _req->SubRef(); + _req->internal_subref(); } if (_target != 0) { - _target->SubRef(); + _target->internal_subref(); } } @@ -139,7 +139,7 @@ RegisterAPI::handleReqDone() // unexpected error; close our connection to this // slobrok server and try again with a fresh slate if (_target != 0) { - _target->SubRef(); + _target->internal_subref(); } _target = 0; _busy.store(true, std::memory_order_relaxed); @@ -159,7 +159,7 @@ RegisterAPI::handleReqDone() // reset backoff strategy on any successful request _backOff.reset(); } - _req->SubRef(); + _req->internal_subref(); _req = 0; } } @@ -173,7 +173,7 @@ RegisterAPI::handleReconnect() vespalib::string cps = _slobrokSpecs.logString(); LOG(warning, "[RPC @ %s] location broker %s removed, will disconnect and use one of: %s", createSpec(_orb).c_str(), _currSlobrok.c_str(), cps.c_str()); - _target->SubRef(); + _target->internal_subref(); _target = 0; } } diff --git a/slobrok/src/vespa/slobrok/server/exchange_manager.cpp b/slobrok/src/vespa/slobrok/server/exchange_manager.cpp index 4b8c1c02252..94def0271c8 100644 --- a/slobrok/src/vespa/slobrok/server/exchange_manager.cpp +++ b/slobrok/src/vespa/slobrok/server/exchange_manager.cpp @@ -160,7 +160,7 @@ ExchangeManager::WorkPackage::WorkItem::RequestDone(FRT_RPCRequest *req) LOG(warning, "error doing workitem: %s", req->GetErrorMessage()); // XXX tell remslob? } - req->SubRef(); + req->internal_subref(); _pendingReq = nullptr; _pkg.doneItem(denied); } diff --git a/slobrok/src/vespa/slobrok/server/managed_rpc_server.cpp b/slobrok/src/vespa/slobrok/server/managed_rpc_server.cpp index 12761c0e6e9..a7013f6e04e 100644 --- a/slobrok/src/vespa/slobrok/server/managed_rpc_server.cpp +++ b/slobrok/src/vespa/slobrok/server/managed_rpc_server.cpp @@ -59,7 +59,7 @@ ManagedRpcServer::cleanupMonitor() { _monitor.disable(); if (_monitoredServer != nullptr) { - _monitoredServer->SubRef(); + _monitoredServer->internal_subref(); _monitoredServer = nullptr; } if (_checkServerReq != nullptr) { @@ -100,7 +100,7 @@ ManagedRpcServer::RequestDone(FRT_RPCRequest *req) if (req->GetErrorCode() == FRTE_RPC_ABORT) { LOG(debug, "rpcserver[%s].check aborted", getName().c_str()); - req->SubRef(); + req->internal_subref(); _checkServerReq = nullptr; return; } @@ -119,7 +119,7 @@ ManagedRpcServer::RequestDone(FRT_RPCRequest *req) } else { errmsg = "checkServer failed validation"; } - req->SubRef(); + req->internal_subref(); _checkServerReq = nullptr; cleanupMonitor(); _mmanager.notifyFailedRpcSrv(this, errmsg); @@ -130,7 +130,7 @@ ManagedRpcServer::RequestDone(FRT_RPCRequest *req) LOG_ASSERT(_monitoredServer != nullptr); _monitor.enable(_monitoredServer); - req->SubRef(); + req->internal_subref(); _checkServerReq = nullptr; _mmanager.notifyOkRpcSrv(this); } diff --git a/slobrok/src/vespa/slobrok/server/remote_slobrok.cpp b/slobrok/src/vespa/slobrok/server/remote_slobrok.cpp index aa891ae0048..0f6fffb7f4f 100644 --- a/slobrok/src/vespa/slobrok/server/remote_slobrok.cpp +++ b/slobrok/src/vespa/slobrok/server/remote_slobrok.cpp @@ -32,7 +32,7 @@ void RemoteSlobrok::shutdown() { _reconnecter.disable(); if (_remote != nullptr) { - _remote->SubRef(); + _remote->internal_subref(); _remote = nullptr; } @@ -110,7 +110,7 @@ void RemoteSlobrok::handleFetchResult() { _serviceMapMirror.clear(); success = false; } - _remFetchReq->SubRef(); + _remFetchReq->internal_subref(); _remFetchReq = nullptr; if (success) { maybeStartFetch(); @@ -132,12 +132,12 @@ RemoteSlobrok::RequestDone(FRT_RPCRequest *req) const char *myspec = args[1]._string._str; LOG(info, "addPeer(%s, %s) on remote slobrok %s at %s: %s", myname, myspec, getName().c_str(), getSpec().c_str(), req->GetErrorMessage()); - req->SubRef(); + req->internal_subref(); _remAddPeerReq = nullptr; fail(); return; } - req->SubRef(); + req->internal_subref(); _remAddPeerReq = nullptr; } else { LOG(error, "got unknown request back in RequestDone()"); @@ -166,7 +166,7 @@ RemoteSlobrok::fail() { // disconnect if (_remote != nullptr) { - _remote->SubRef(); + _remote->internal_subref(); _remote = nullptr; } // schedule reconnect attempt -- cgit v1.2.3