This is an automated email from the ASF dual-hosted git repository.
laiyingchun pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-pegasus.git
The following commit(s) were added to refs/heads/master by this push:
new baa4840e5 refactor(FQDN): Use const reference to reduce unnecessary
object copying (#1957)
baa4840e5 is described below
commit baa4840e5f12cf758dd32da6eb7644cd973a1988
Author: Yingchun Lai <[email protected]>
AuthorDate: Wed Apr 10 21:35:38 2024 +0800
refactor(FQDN): Use const reference to reduce unnecessary object copying
(#1957)
---
src/client/partition_resolver.h | 2 +-
src/common/replication_common.cpp | 2 +-
src/common/replication_other_types.h | 8 +++---
src/failure_detector/failure_detector.cpp | 26 +++++++++----------
src/failure_detector/failure_detector.h | 30 +++++++++++-----------
.../failure_detector_multimaster.cpp | 2 +-
.../failure_detector_multimaster.h | 4 +--
src/failure_detector/test/failure_detector.cpp | 6 ++---
src/meta/cluster_balance_policy.cpp | 3 ++-
src/meta/cluster_balance_policy.h | 2 +-
src/meta/load_balance_policy.cpp | 4 +--
src/meta/load_balance_policy.h | 4 +--
src/meta/meta_data.h | 4 +--
src/meta/meta_server_failure_detector.cpp | 6 ++---
src/meta/meta_server_failure_detector.h | 10 ++++----
src/meta/partition_guardian.h | 2 +-
src/meta/server_state.cpp | 5 ++--
src/meta/server_state.h | 4 +--
.../test/balancer_simulator/balancer_simulator.cpp | 2 +-
src/meta/test/balancer_validator.cpp | 2 +-
src/meta/test/misc/misc.cpp | 10 ++++----
src/nfs/nfs_client_impl.cpp | 3 +--
src/replica/replica.h | 10 ++++----
src/replica/replica_2pc.cpp | 2 +-
src/replica/replica_config.cpp | 4 +--
src/replica/replica_context.cpp | 2 +-
src/replica/replica_context.h | 6 ++---
src/replica/replica_failover.cpp | 5 ++--
src/replica/replica_learn.cpp | 2 +-
src/replica/replica_stub.cpp | 2 +-
src/replica/replica_stub.h | 7 ++---
src/replica/storage/simple_kv/test/checker.cpp | 2 +-
src/replica/storage/simple_kv/test/checker.h | 2 +-
src/runtime/test/host_port_test.cpp | 8 +++---
src/shell/command_helper.h | 2 +-
src/shell/commands/recovery.cpp | 2 +-
36 files changed, 101 insertions(+), 96 deletions(-)
diff --git a/src/client/partition_resolver.h b/src/client/partition_resolver.h
index 8d54c272c..d4105a26b 100644
--- a/src/client/partition_resolver.h
+++ b/src/client/partition_resolver.h
@@ -93,7 +93,7 @@ public:
std::string get_app_name() const { return _app_name; }
- dsn::host_port get_meta_server() const { return _meta_server; }
+ const dsn::host_port &get_meta_server() const { return _meta_server; }
const char *log_prefix() const { return _app_name.c_str(); }
diff --git a/src/common/replication_common.cpp
b/src/common/replication_common.cpp
index e2fae570a..f8e4f3cdf 100644
--- a/src/common/replication_common.cpp
+++ b/src/common/replication_common.cpp
@@ -167,7 +167,7 @@ int32_t
replication_options::app_mutation_2pc_min_replica_count(int32_t app_max_
}
/*static*/ bool replica_helper::get_replica_config(const
partition_configuration &partition_config,
- ::dsn::host_port node,
+ const ::dsn::host_port
&node,
/*out*/
replica_configuration &replica_config)
{
replica_config.pid = partition_config.pid;
diff --git a/src/common/replication_other_types.h
b/src/common/replication_other_types.h
index fe0ed7212..ca96428d7 100644
--- a/src/common/replication_other_types.h
+++ b/src/common/replication_other_types.h
@@ -69,9 +69,11 @@ inline bool is_partition_config_equal(const
partition_configuration &pc1,
const partition_configuration &pc2)
{
// secondaries no need to be same order
- for (const host_port &addr : pc1.hp_secondaries)
- if (!is_secondary(pc2, addr))
+ for (const auto &hp : pc1.hp_secondaries) {
+ if (!is_secondary(pc2, hp)) {
return false;
+ }
+ }
// last_drops is not considered into equality check
return pc1.ballot == pc2.ballot && pc1.pid == pc2.pid &&
pc1.max_replica_count == pc2.max_replica_count && pc1.primary ==
pc2.primary &&
@@ -95,7 +97,7 @@ public:
return false;
}
static bool get_replica_config(const partition_configuration
&partition_config,
- ::dsn::host_port node,
+ const ::dsn::host_port &node,
/*out*/ replica_configuration
&replica_config);
// Return true if 'server_list' is a valid comma-separated list of
servers, otherwise return
diff --git a/src/failure_detector/failure_detector.cpp
b/src/failure_detector/failure_detector.cpp
index 70a5c2e9e..c4c6f087c 100644
--- a/src/failure_detector/failure_detector.cpp
+++ b/src/failure_detector/failure_detector.cpp
@@ -125,7 +125,7 @@ void failure_detector::stop()
_workers.clear();
}
-void failure_detector::register_master(::dsn::host_port target)
+void failure_detector::register_master(const ::dsn::host_port &target)
{
bool setup_timer = false;
@@ -159,8 +159,8 @@ void failure_detector::register_master(::dsn::host_port
target)
}
}
-bool failure_detector::switch_master(::dsn::host_port from,
- ::dsn::host_port to,
+bool failure_detector::switch_master(const ::dsn::host_port &from,
+ const ::dsn::host_port &to,
uint32_t delay_milliseconds)
{
/* the caller of switch master shoud lock necessarily to protect _masters
*/
@@ -198,7 +198,7 @@ bool failure_detector::switch_master(::dsn::host_port from,
bool failure_detector::is_time_greater_than(uint64_t ts, uint64_t base) {
return ts > base; }
-void failure_detector::report(::dsn::host_port node, bool is_master, bool
is_connected)
+void failure_detector::report(const ::dsn::host_port &node, bool is_master,
bool is_connected)
{
LOG_INFO(
"{} {}connected: {}", is_master ? "master" : "worker", is_connected ?
"" : "dis", node);
@@ -308,13 +308,13 @@ void failure_detector::check_all_records()
}
}
-void failure_detector::add_allow_list(::dsn::host_port node)
+void failure_detector::add_allow_list(const ::dsn::host_port &node)
{
zauto_lock l(_lock);
_allow_list.insert(node);
}
-bool failure_detector::remove_from_allow_list(::dsn::host_port node)
+bool failure_detector::remove_from_allow_list(const ::dsn::host_port &node)
{
zauto_lock l(_lock);
return _allow_list.erase(node) > 0;
@@ -325,7 +325,7 @@ void failure_detector::set_allow_list(const
std::vector<std::string> &replica_hp
CHECK(!_is_started, "FD is already started, the allow list should really
not be modified");
std::vector<host_port> nodes;
- for (auto &hp : replica_hps) {
+ for (const auto &hp : replica_hps) {
const auto node = dsn::host_port::from_string(hp);
if (!node) {
LOG_WARNING("replica_white_list has invalid ip {}, the allow list
won't be modified",
@@ -507,7 +507,7 @@ bool failure_detector::end_ping_internal(::dsn::error_code
err, const beacon_ack
return true;
}
-bool failure_detector::unregister_master(::dsn::host_port node)
+bool failure_detector::unregister_master(const host_port &node)
{
zauto_lock l(_lock);
auto it = _masters.find(node);
@@ -523,7 +523,7 @@ bool failure_detector::unregister_master(::dsn::host_port
node)
}
}
-bool failure_detector::is_master_connected(::dsn::host_port node) const
+bool failure_detector::is_master_connected(const host_port &node) const
{
zauto_lock l(_lock);
auto it = _masters.find(node);
@@ -533,7 +533,7 @@ bool failure_detector::is_master_connected(::dsn::host_port
node) const
return false;
}
-void failure_detector::register_worker(::dsn::host_port target, bool
is_connected)
+void failure_detector::register_worker(const host_port &target, bool
is_connected)
{
/*
* callers should use the fd::_lock necessarily
@@ -549,7 +549,7 @@ void failure_detector::register_worker(::dsn::host_port
target, bool is_connecte
}
}
-bool failure_detector::unregister_worker(::dsn::host_port node)
+bool failure_detector::unregister_worker(const host_port &node)
{
/*
* callers should use the fd::_lock necessarily
@@ -575,7 +575,7 @@ void failure_detector::clear_workers()
_workers.clear();
}
-bool failure_detector::is_worker_connected(::dsn::host_port node) const
+bool failure_detector::is_worker_connected(const ::dsn::host_port &node) const
{
zauto_lock l(_lock);
auto it = _workers.find(node);
@@ -585,7 +585,7 @@ bool failure_detector::is_worker_connected(::dsn::host_port
node) const
return false;
}
-void failure_detector::send_beacon(::dsn::host_port target, uint64_t time)
+void failure_detector::send_beacon(const host_port &target, uint64_t time)
{
const auto &addr_target =
dsn::dns_resolver::instance().resolve_address(target);
beacon_msg beacon;
diff --git a/src/failure_detector/failure_detector.h
b/src/failure_detector/failure_detector.h
index af50122d2..4ff0fc53e 100644
--- a/src/failure_detector/failure_detector.h
+++ b/src/failure_detector/failure_detector.h
@@ -64,11 +64,11 @@ public:
// worker side
virtual void on_master_disconnected(const std::vector<::dsn::host_port>
&nodes) = 0;
- virtual void on_master_connected(::dsn::host_port node) = 0;
+ virtual void on_master_connected(const host_port &node) = 0;
// master side
virtual void on_worker_disconnected(const std::vector<::dsn::host_port>
&nodes) = 0;
- virtual void on_worker_connected(::dsn::host_port node) = 0;
+ virtual void on_worker_connected(const ::dsn::host_port &node) = 0;
};
// The interface for a perfect failure detector.
@@ -121,30 +121,30 @@ public:
uint32_t get_lease_ms() const { return _lease_milliseconds; }
uint32_t get_grace_ms() const { return _grace_milliseconds; }
- void register_master(::dsn::host_port target);
+ void register_master(const host_port &target);
- bool switch_master(::dsn::host_port from, ::dsn::host_port to, uint32_t
delay_milliseconds);
+ bool switch_master(const host_port &from, const host_port &to, uint32_t
delay_milliseconds);
- bool unregister_master(::dsn::host_port node);
+ bool unregister_master(const host_port &node);
- virtual bool is_master_connected(::dsn::host_port node) const;
+ virtual bool is_master_connected(const host_port &node) const;
// ATTENTION: be very careful to set is_connected to false as
// workers are always considered *connected* initially which is ok even
when workers think
// master is disconnected
// Considering workers *disconnected* initially is *dangerous* coz it may
violate the invariance
// when workers think they are online
- void register_worker(::dsn::host_port node, bool is_connected = true);
+ void register_worker(const host_port &node, bool is_connected = true);
- bool unregister_worker(::dsn::host_port node);
+ bool unregister_worker(const host_port &node);
void clear_workers();
- virtual bool is_worker_connected(::dsn::host_port node) const;
+ virtual bool is_worker_connected(const host_port &node) const;
- void add_allow_list(::dsn::host_port node);
+ void add_allow_list(const host_port &node);
- bool remove_from_allow_list(::dsn::host_port node);
+ bool remove_from_allow_list(const host_port &node);
void set_allow_list(const std::vector<std::string> &replica_hps);
@@ -162,7 +162,7 @@ protected:
bool is_time_greater_than(uint64_t ts, uint64_t base);
- void report(::dsn::host_port node, bool is_master, bool is_connected);
+ void report(const host_port &node, bool is_master, bool is_connected);
private:
void check_all_records();
@@ -179,7 +179,7 @@ private:
// masters are always considered *disconnected* initially which is ok
even when master
// thinks workers are connected
- master_record(::dsn::host_port n, uint64_t
last_send_time_for_beacon_with_ack_)
+ master_record(const host_port &n, uint64_t
last_send_time_for_beacon_with_ack_)
{
node = n;
last_send_time_for_beacon_with_ack =
last_send_time_for_beacon_with_ack_;
@@ -197,7 +197,7 @@ private:
// workers are always considered *connected* initially which is ok
even when workers think
// master is disconnected
- worker_record(::dsn::host_port node, uint64_t last_beacon_recv_time)
+ worker_record(const host_port &node, uint64_t last_beacon_recv_time)
{
this->node = node;
this->last_beacon_recv_time = last_beacon_recv_time;
@@ -235,7 +235,7 @@ protected:
dsn::task_tracker _tracker;
// subClass can rewrite these method.
- virtual void send_beacon(::dsn::host_port node, uint64_t time);
+ virtual void send_beacon(const host_port &node, uint64_t time);
};
}
} // end namespace
diff --git a/src/failure_detector/failure_detector_multimaster.cpp
b/src/failure_detector/failure_detector_multimaster.cpp
index 32bca4b42..08eb67726 100644
--- a/src/failure_detector/failure_detector_multimaster.cpp
+++ b/src/failure_detector/failure_detector_multimaster.cpp
@@ -131,7 +131,7 @@ void
slave_failure_detector_with_multimaster::on_master_disconnected(
}
}
-void
slave_failure_detector_with_multimaster::on_master_connected(::dsn::host_port
node)
+void slave_failure_detector_with_multimaster::on_master_connected(const
host_port &node)
{
/*
* well, this is called in on_ping_internal, which is called by
rep::end_ping.
diff --git a/src/failure_detector/failure_detector_multimaster.h
b/src/failure_detector/failure_detector_multimaster.h
index a431cb4d3..3a803f9c6 100644
--- a/src/failure_detector/failure_detector_multimaster.h
+++ b/src/failure_detector/failure_detector_multimaster.h
@@ -57,14 +57,14 @@ public:
// client side
void on_master_disconnected(const std::vector<::dsn::host_port> &nodes)
override;
- void on_master_connected(::dsn::host_port node) override;
+ void on_master_connected(const host_port &node) override;
// server side
void on_worker_disconnected(const std::vector<::dsn::host_port> &nodes)
override
{
CHECK(false, "invalid execution flow");
}
- void on_worker_connected(::dsn::host_port node) override
+ void on_worker_connected(const host_port &node) override
{
CHECK(false, "invalid execution flow");
}
diff --git a/src/failure_detector/test/failure_detector.cpp
b/src/failure_detector/test/failure_detector.cpp
index 49c223e89..dcfcd69ae 100644
--- a/src/failure_detector/test/failure_detector.cpp
+++ b/src/failure_detector/test/failure_detector.cpp
@@ -88,7 +88,7 @@ private:
std::function<void(const std::vector<host_port> &)> _disconnected_cb;
protected:
- virtual void send_beacon(::dsn::host_port node, uint64_t time) override
+ virtual void send_beacon(const host_port &node, uint64_t time) override
{
if (_send_ping_switch)
failure_detector::send_beacon(node, time);
@@ -103,7 +103,7 @@ protected:
_disconnected_cb(nodes);
}
- virtual void on_master_connected(host_port node) override
+ virtual void on_master_connected(const host_port &node) override
{
if (_connected_cb)
_connected_cb(node);
@@ -155,7 +155,7 @@ public:
if (_disconnected_cb)
_disconnected_cb(worker_list);
}
- virtual void on_worker_connected(host_port node) override
+ virtual void on_worker_connected(const host_port &node) override
{
if (_connected_cb)
_connected_cb(node);
diff --git a/src/meta/cluster_balance_policy.cpp
b/src/meta/cluster_balance_policy.cpp
index 8b2788e71..6a81a8365 100644
--- a/src/meta/cluster_balance_policy.cpp
+++ b/src/meta/cluster_balance_policy.cpp
@@ -495,7 +495,8 @@ bool cluster_balance_policy::apply_move(const move_info
&move,
/*out*/ cluster_migration_info
&cluster_info)
{
int32_t app_id = move.pid.get_app_id();
- host_port source = move.source_node, target = move.target_node;
+ const auto &source = move.source_node;
+ const auto &target = move.target_node;
if (cluster_info.apps_skew.find(app_id) == cluster_info.apps_skew.end() ||
cluster_info.replicas_count.find(source) ==
cluster_info.replicas_count.end() ||
cluster_info.replicas_count.find(target) ==
cluster_info.replicas_count.end() ||
diff --git a/src/meta/cluster_balance_policy.h
b/src/meta/cluster_balance_policy.h
index 196bf5a9b..c7189fd35 100644
--- a/src/meta/cluster_balance_policy.h
+++ b/src/meta/cluster_balance_policy.h
@@ -116,7 +116,7 @@ private:
{
return app_id == another.app_id;
}
- partition_status::type get_partition_status(int32_t pidx, host_port
node)
+ partition_status::type get_partition_status(int32_t pidx, const
host_port &node)
{
for (const auto &kv : partitions[pidx]) {
if (kv.first == node) {
diff --git a/src/meta/load_balance_policy.cpp b/src/meta/load_balance_policy.cpp
index 3b44fbb9b..cdea0b39c 100644
--- a/src/meta/load_balance_policy.cpp
+++ b/src/meta/load_balance_policy.cpp
@@ -350,8 +350,8 @@ std::list<dsn::gpid>
load_balance_policy::calc_potential_moving(
dsn::gpid load_balance_policy::select_moving(std::list<dsn::gpid>
&potential_moving,
disk_load *prev_load,
disk_load *current_load,
- host_port from,
- host_port to)
+ const host_port &from,
+ const host_port &to)
{
std::list<dsn::gpid>::iterator selected = potential_moving.end();
int max = std::numeric_limits<int>::min();
diff --git a/src/meta/load_balance_policy.h b/src/meta/load_balance_policy.h
index 5afbda587..8294ff8ac 100644
--- a/src/meta/load_balance_policy.h
+++ b/src/meta/load_balance_policy.h
@@ -130,8 +130,8 @@ private:
dsn::gpid select_moving(std::list<dsn::gpid> &potential_moving,
disk_load *prev_load,
disk_load *current_load,
- host_port from,
- host_port to);
+ const host_port &from,
+ const host_port &to);
void number_nodes(const node_mapper &nodes);
std::string remote_command_balancer_ignored_app_ids(const
std::vector<std::string> &args);
diff --git a/src/meta/meta_data.h b/src/meta/meta_data.h
index 55384f519..05ee95790 100644
--- a/src/meta/meta_data.h
+++ b/src/meta/meta_data.h
@@ -437,7 +437,7 @@ struct meta_view
node_mapper *nodes;
};
-inline node_state *get_node_state(node_mapper &nodes, host_port hp, bool
create_new)
+inline node_state *get_node_state(node_mapper &nodes, const host_port &hp,
bool create_new)
{
node_state *ns;
if (nodes.find(hp) == nodes.end()) {
@@ -450,7 +450,7 @@ inline node_state *get_node_state(node_mapper &nodes,
host_port hp, bool create_
return ns;
}
-inline bool is_node_alive(const node_mapper &nodes, host_port hp)
+inline bool is_node_alive(const node_mapper &nodes, const host_port &hp)
{
auto iter = nodes.find(hp);
if (iter == nodes.end())
diff --git a/src/meta/meta_server_failure_detector.cpp
b/src/meta/meta_server_failure_detector.cpp
index 1da8e3a99..e729bd87f 100644
--- a/src/meta/meta_server_failure_detector.cpp
+++ b/src/meta/meta_server_failure_detector.cpp
@@ -101,7 +101,7 @@ void
meta_server_failure_detector::on_worker_disconnected(const std::vector<host
_svc->set_node_state(nodes, false);
}
-void meta_server_failure_detector::on_worker_connected(host_port node)
+void meta_server_failure_detector::on_worker_connected(const host_port &node)
{
_svc->set_node_state({node}, true);
}
@@ -338,7 +338,7 @@ void meta_server_failure_detector::on_ping(const
fd::beacon_msg &beacon,
}
/*the following functions are only for test*/
-meta_server_failure_detector::meta_server_failure_detector(host_port
leader_host_port,
+meta_server_failure_detector::meta_server_failure_detector(const host_port
&leader_host_port,
bool
is_myself_leader)
{
LOG_INFO("set {} as leader", leader_host_port);
@@ -346,7 +346,7 @@
meta_server_failure_detector::meta_server_failure_detector(host_port leader_host
_is_leader.store(is_myself_leader);
}
-void meta_server_failure_detector::set_leader_for_test(host_port
leader_host_port,
+void meta_server_failure_detector::set_leader_for_test(const host_port
&leader_host_port,
bool is_myself_leader)
{
LOG_INFO("set {} as leader", leader_host_port);
diff --git a/src/meta/meta_server_failure_detector.h
b/src/meta/meta_server_failure_detector.h
index 2b9d780a1..a4f7b6d12 100644
--- a/src/meta/meta_server_failure_detector.h
+++ b/src/meta/meta_server_failure_detector.h
@@ -98,14 +98,14 @@ public:
{
CHECK(false, "unsupported method");
}
- virtual void on_master_connected(host_port) { CHECK(false, "unsupported
method"); }
+ virtual void on_master_connected(const host_port &) { CHECK(false,
"unsupported method"); }
// server side
// it is in the protection of failure_detector::_lock
virtual void on_worker_disconnected(const std::vector<host_port> &nodes)
override;
// it is in the protection of failure_detector::_lock
- virtual void on_worker_connected(host_port node) override;
- virtual bool is_worker_connected(host_port node) const override
+ virtual void on_worker_connected(const host_port &node) override;
+ virtual bool is_worker_connected(const host_port &node) const override
{
// we treat all nodes not in the worker list alive in the first grace
period.
// For the reason, please consider this situation:
@@ -150,8 +150,8 @@ private:
public:
/* these two functions are for test */
- meta_server_failure_detector(host_port leader_host_port, bool
is_myself_leader);
- void set_leader_for_test(host_port leader_host_port, bool
is_myself_leader);
+ meta_server_failure_detector(const host_port &leader_host_port, bool
is_myself_leader);
+ void set_leader_for_test(const host_port &leader_host_port, bool
is_myself_leader);
stability_map *get_stability_map_for_test();
};
}
diff --git a/src/meta/partition_guardian.h b/src/meta/partition_guardian.h
index 7a7953b59..4fd3f966d 100644
--- a/src/meta/partition_guardian.h
+++ b/src/meta/partition_guardian.h
@@ -82,7 +82,7 @@ private:
_ddd_partitions[partition.config.pid] = std::move(partition);
}
- bool in_black_list(dsn::host_port hp)
+ bool in_black_list(const dsn::host_port &hp)
{
dsn::zauto_read_lock l(_black_list_lock);
return _assign_secondary_black_list.count(hp) != 0;
diff --git a/src/meta/server_state.cpp b/src/meta/server_state.cpp
index 17a7e3e3f..d7a992692 100644
--- a/src/meta/server_state.cpp
+++ b/src/meta/server_state.cpp
@@ -1431,7 +1431,8 @@ void server_state::list_apps(const
configuration_list_apps_request &request,
response.err = dsn::ERR_OK;
}
-void server_state::send_proposal(host_port target, const
configuration_update_request &proposal)
+void server_state::send_proposal(const host_port &target,
+ const configuration_update_request &proposal)
{
host_port hp_node;
GET_HOST_PORT(proposal, node, hp_node);
@@ -2093,7 +2094,7 @@ void
server_state::on_partition_node_dead(std::shared_ptr<app_state> &app,
}
}
-void server_state::on_change_node_state(host_port node, bool is_alive)
+void server_state::on_change_node_state(const host_port &node, bool is_alive)
{
LOG_DEBUG("change node({}) state to {}", node, is_alive ? "alive" :
"dead");
zauto_write_lock l(_lock);
diff --git a/src/meta/server_state.h b/src/meta/server_state.h
index b6b20a790..aad53ec5c 100644
--- a/src/meta/server_state.h
+++ b/src/meta/server_state.h
@@ -182,7 +182,7 @@ public:
error_code dump_from_remote_storage(const char *local_path, bool
sync_immediately);
error_code restore_from_local_storage(const char *local_path);
- void on_change_node_state(host_port node, bool is_alive);
+ void on_change_node_state(const host_port &node, bool is_alive);
void on_propose_balancer(const configuration_balancer_request &request,
configuration_balancer_response &response);
void on_start_recovery(const configuration_recovery_request &request,
@@ -289,7 +289,7 @@ private:
void on_partition_node_dead(std::shared_ptr<app_state> &app,
int pidx,
const dsn::host_port &address);
- void send_proposal(host_port target, const configuration_update_request
&proposal);
+ void send_proposal(const host_port &target, const
configuration_update_request &proposal);
void send_proposal(const configuration_proposal_action &action,
const partition_configuration &pc,
const app_state &app);
diff --git a/src/meta/test/balancer_simulator/balancer_simulator.cpp
b/src/meta/test/balancer_simulator/balancer_simulator.cpp
index e23bbdb83..5e1bf5a52 100644
--- a/src/meta/test/balancer_simulator/balancer_simulator.cpp
+++ b/src/meta/test/balancer_simulator/balancer_simulator.cpp
@@ -69,7 +69,7 @@ public:
container.pop_back();
return result;
}
- dsn::host_port top() const { return container.front(); }
+ const dsn::host_port &top() const { return container.front(); }
bool empty() const { return container.empty(); }
private:
std::vector<dsn::host_port> container;
diff --git a/src/meta/test/balancer_validator.cpp
b/src/meta/test/balancer_validator.cpp
index 804f9c61d..bca7d4fde 100644
--- a/src/meta/test/balancer_validator.cpp
+++ b/src/meta/test/balancer_validator.cpp
@@ -172,7 +172,7 @@ void meta_service_test_app::balancer_validator()
// now test the cure
::dsn::partition_configuration &pc = the_app->partitions[0];
nodes[pc.hp_primary].remove_partition(pc.pid, false);
- for (const dsn::host_port &hp : pc.hp_secondaries)
+ for (const auto &hp : pc.hp_secondaries)
nodes[hp].remove_partition(pc.pid, false);
pc.primary.set_invalid();
pc.secondaries.clear();
diff --git a/src/meta/test/misc/misc.cpp b/src/meta/test/misc/misc.cpp
index a2fa90ab5..8e57ba1d1 100644
--- a/src/meta/test/misc/misc.cpp
+++ b/src/meta/test/misc/misc.cpp
@@ -96,7 +96,7 @@ void generate_node_mapper(
const std::vector<dsn::host_port> &input_node_list)
{
output_nodes.clear();
- for (auto &hp : input_node_list) {
+ for (const auto &hp : input_node_list) {
get_node_state(output_nodes, hp, true)->set_alive(true);
}
@@ -108,7 +108,7 @@ void generate_node_mapper(
ns = get_node_state(output_nodes, pc.hp_primary, true);
ns->put_partition(pc.pid, true);
}
- for (const dsn::host_port &sec : pc.hp_secondaries) {
+ for (const auto &sec : pc.hp_secondaries) {
CHECK(!sec.is_invalid(), "");
ns = get_node_state(output_nodes, sec, true);
ns->put_partition(pc.pid, false);
@@ -159,7 +159,7 @@ void generate_app_serving_replica_info(/*out*/
std::shared_ptr<dsn::replication:
ri.disk_tag = buffer;
cc.collect_serving_replica(pc.hp_primary, ri);
- for (const dsn::host_port &hp : pc.hp_secondaries) {
+ for (const auto &hp : pc.hp_secondaries) {
snprintf(buffer, 256, "disk%u", dsn::rand::next_u32(1,
total_disks));
ri.disk_tag = buffer;
cc.collect_serving_replica(hp, ri);
@@ -425,8 +425,8 @@ void migration_check_and_apply(app_mapper &apps,
CHECK(!pc.hp_primary.is_invalid(), "");
CHECK_EQ(pc.hp_secondaries.size(), 2);
- for (auto &host_port : pc.hp_secondaries) {
- CHECK(!host_port.is_invalid(), "");
+ for (const auto &hp : pc.hp_secondaries) {
+ CHECK(hp, "");
}
CHECK(!is_secondary(pc, pc.hp_primary), "");
diff --git a/src/nfs/nfs_client_impl.cpp b/src/nfs/nfs_client_impl.cpp
index 0feb71711..7712583b2 100644
--- a/src/nfs/nfs_client_impl.cpp
+++ b/src/nfs/nfs_client_impl.cpp
@@ -34,7 +34,6 @@
#include "nfs/nfs_code_definition.h"
#include "nfs/nfs_node.h"
#include "runtime/rpc/dns_resolver.h"
-#include "runtime/rpc/rpc_host_port.h"
#include "utils/blob.h"
#include "utils/command_manager.h"
#include "utils/filesystem.h"
@@ -355,7 +354,7 @@ void nfs_client_impl::end_copy(::dsn::error_code err,
METRIC_VAR_INCREMENT(nfs_client_copy_failed_requests);
if (!fc->user_req->is_finished) {
- host_port hp = fc->user_req->file_size_req.hp_source;
+ const auto &hp = fc->user_req->file_size_req.hp_source;
if (reqc->retry_count > 0) {
LOG_WARNING(
"[nfs_service] remote copy failed, source = {}({}), dir =
{}, file = {}, "
diff --git a/src/replica/replica.h b/src/replica/replica.h
index ab9e451a4..6ab8bfde4 100644
--- a/src/replica/replica.h
+++ b/src/replica/replica.h
@@ -326,7 +326,7 @@ private:
// See more about it in `replica_bulk_loader.cpp`
void
init_prepare(mutation_ptr &mu, bool reconciliation, bool
pop_all_committed_mutations = false);
- void send_prepare_message(::dsn::host_port addr,
+ void send_prepare_message(const ::dsn::host_port &addr,
partition_status::type status,
const mutation_ptr &mu,
int timeout_milliseconds,
@@ -352,7 +352,7 @@ private:
learn_response &&resp);
void on_learn_remote_state_completed(error_code err);
void handle_learning_error(error_code err, bool is_local_error);
- error_code handle_learning_succeeded_on_primary(::dsn::host_port node,
+ error_code handle_learning_succeeded_on_primary(const host_port &node,
uint64_t learn_signature);
void notify_learn_completion();
error_code apply_learned_state_from_private_log(learn_state &state);
@@ -381,7 +381,7 @@ private:
// failure handling
void handle_local_failure(error_code error);
void handle_remote_failure(partition_status::type status,
- ::dsn::host_port node,
+ const host_port &node,
error_code error,
const std::string &caused_by);
@@ -389,12 +389,12 @@ private:
// reconfiguration
void assign_primary(configuration_update_request &proposal);
void add_potential_secondary(configuration_update_request &proposal);
- void upgrade_to_secondary_on_primary(::dsn::host_port node);
+ void upgrade_to_secondary_on_primary(const host_port &node);
void downgrade_to_secondary_on_primary(configuration_update_request
&proposal);
void downgrade_to_inactive_on_primary(configuration_update_request
&proposal);
void remove(configuration_update_request &proposal);
void update_configuration_on_meta_server(config_type::type type,
- ::dsn::host_port node,
+ const host_port &node,
partition_configuration
&newConfig);
void
on_update_configuration_on_meta_server_reply(error_code err,
diff --git a/src/replica/replica_2pc.cpp b/src/replica/replica_2pc.cpp
index 5440a048c..ccbf3c87c 100644
--- a/src/replica/replica_2pc.cpp
+++ b/src/replica/replica_2pc.cpp
@@ -357,7 +357,7 @@ ErrOut:
return;
}
-void replica::send_prepare_message(::dsn::host_port hp,
+void replica::send_prepare_message(const ::dsn::host_port &hp,
partition_status::type status,
const mutation_ptr &mu,
int timeout_milliseconds,
diff --git a/src/replica/replica_config.cpp b/src/replica/replica_config.cpp
index 386a03e72..6fa389aad 100644
--- a/src/replica/replica_config.cpp
+++ b/src/replica/replica_config.cpp
@@ -245,7 +245,7 @@ void
replica::add_potential_secondary(configuration_update_request &proposal)
proposal.node, RPC_LEARN_ADD_LEARNER, request,
get_gpid().thread_hash());
}
-void replica::upgrade_to_secondary_on_primary(::dsn::host_port node)
+void replica::upgrade_to_secondary_on_primary(const ::dsn::host_port &node)
{
LOG_INFO_PREFIX("upgrade potential secondary {} to secondary", node);
@@ -367,7 +367,7 @@ void replica::on_remove(const replica_configuration
&request)
}
void replica::update_configuration_on_meta_server(config_type::type type,
- ::dsn::host_port node,
+ const host_port &node,
partition_configuration
&newConfig)
{
// type should never be `CT_REGISTER_CHILD`
diff --git a/src/replica/replica_context.cpp b/src/replica/replica_context.cpp
index 07490bc50..acc8fa64a 100644
--- a/src/replica/replica_context.cpp
+++ b/src/replica/replica_context.cpp
@@ -131,7 +131,7 @@ void
primary_context::get_replica_config(partition_status::type st,
config.learner_signature = learner_signature;
}
-bool primary_context::check_exist(::dsn::host_port node,
partition_status::type st)
+bool primary_context::check_exist(const ::dsn::host_port &node,
partition_status::type st)
{
switch (st) {
case partition_status::PS_PRIMARY:
diff --git a/src/replica/replica_context.h b/src/replica/replica_context.h
index 5099260c1..0a3b49924 100644
--- a/src/replica/replica_context.h
+++ b/src/replica/replica_context.h
@@ -104,8 +104,8 @@ public:
void get_replica_config(partition_status::type status,
/*out*/ replica_configuration &config,
uint64_t learner_signature = invalid_signature);
- bool check_exist(::dsn::host_port node, partition_status::type status);
- partition_status::type get_node_status(::dsn::host_port hp) const;
+ bool check_exist(const ::dsn::host_port &node, partition_status::type
status);
+ partition_status::type get_node_status(const ::dsn::host_port &hp) const;
void do_cleanup_pending_mutations(bool clean_pending_mutations = true);
@@ -295,7 +295,7 @@ public:
//---------------inline
impl----------------------------------------------------------------
-inline partition_status::type
primary_context::get_node_status(::dsn::host_port hp) const
+inline partition_status::type primary_context::get_node_status(const
::dsn::host_port &hp) const
{
auto it = statuses.find(hp);
return it != statuses.end() ? it->second : partition_status::PS_INACTIVE;
diff --git a/src/replica/replica_failover.cpp b/src/replica/replica_failover.cpp
index b689dbdda..3dab15c8d 100644
--- a/src/replica/replica_failover.cpp
+++ b/src/replica/replica_failover.cpp
@@ -38,11 +38,12 @@
#include "replica_stub.h"
#include "runtime/rpc/dns_resolver.h"
#include "runtime/rpc/rpc_address.h"
-#include "runtime/rpc/rpc_host_port.h"
#include "utils/error_code.h"
#include "utils/fmt_logging.h"
namespace dsn {
+class host_port;
+
namespace replication {
// The failure handling part of replica.
@@ -65,7 +66,7 @@ void replica::handle_local_failure(error_code error)
}
void replica::handle_remote_failure(partition_status::type st,
- ::dsn::host_port node,
+ const ::dsn::host_port &node,
error_code error,
const std::string &caused_by)
{
diff --git a/src/replica/replica_learn.cpp b/src/replica/replica_learn.cpp
index 92a1c49c3..9048e7a61 100644
--- a/src/replica/replica_learn.cpp
+++ b/src/replica/replica_learn.cpp
@@ -1298,7 +1298,7 @@ void replica::handle_learning_error(error_code err, bool
is_local_error)
is_local_error ? partition_status::PS_ERROR :
partition_status::PS_INACTIVE);
}
-error_code replica::handle_learning_succeeded_on_primary(::dsn::host_port node,
+error_code replica::handle_learning_succeeded_on_primary(const host_port &node,
uint64_t
learn_signature)
{
auto it = _primary_states.learners.find(node);
diff --git a/src/replica/replica_stub.cpp b/src/replica/replica_stub.cpp
index 6d581edfd..418844913 100644
--- a/src/replica/replica_stub.cpp
+++ b/src/replica/replica_stub.cpp
@@ -2589,7 +2589,7 @@ uint64_t replica_stub::gc_tcmalloc_memory(bool
release_all)
//
// partition split
//
-void replica_stub::create_child_replica(host_port primary_address,
+void replica_stub::create_child_replica(const host_port &primary_address,
app_info app,
ballot init_ballot,
gpid child_gpid,
diff --git a/src/replica/replica_stub.h b/src/replica/replica_stub.h
index 9e1c09762..516bc2303 100644
--- a/src/replica/replica_stub.h
+++ b/src/replica/replica_stub.h
@@ -115,8 +115,9 @@ class cold_backup_context;
class replica_split_manager;
typedef std::unordered_map<gpid, replica_ptr> replicas;
-typedef std::function<void(
- ::dsn::host_port /*from*/, const replica_configuration & /*new_config*/,
bool /*is_closing*/)>
+typedef std::function<void(const ::dsn::host_port & /*from*/,
+ const replica_configuration & /*new_config*/,
+ bool /*is_closing*/)>
replica_state_subscriber;
class replica_stub;
@@ -229,7 +230,7 @@ public:
//
// called by parent partition, executed by child partition
- void create_child_replica(dsn::host_port primary_address,
+ void create_child_replica(const dsn::host_port &primary_address,
app_info app,
ballot init_ballot,
gpid child_gpid,
diff --git a/src/replica/storage/simple_kv/test/checker.cpp
b/src/replica/storage/simple_kv/test/checker.cpp
index 405181897..4fa40dbf0 100644
--- a/src/replica/storage/simple_kv/test/checker.cpp
+++ b/src/replica/storage/simple_kv/test/checker.cpp
@@ -280,7 +280,7 @@ void test_checker::check()
}
}
-void test_checker::on_replica_state_change(::dsn::host_port from,
+void test_checker::on_replica_state_change(const host_port &from,
const replica_configuration
&new_config,
bool is_closing)
{
diff --git a/src/replica/storage/simple_kv/test/checker.h
b/src/replica/storage/simple_kv/test/checker.h
index b5d3e2bf7..c94059edd 100644
--- a/src/replica/storage/simple_kv/test/checker.h
+++ b/src/replica/storage/simple_kv/test/checker.h
@@ -76,7 +76,7 @@ public:
std::string address_to_node_name(host_port addr);
host_port node_name_to_address(const std::string &name);
- void on_replica_state_change(::dsn::host_port from,
+ void on_replica_state_change(const host_port &from,
const replica_configuration &new_config,
bool is_closing);
void on_config_change(const app_mapper &new_config);
diff --git a/src/runtime/test/host_port_test.cpp
b/src/runtime/test/host_port_test.cpp
index 722ea5e2f..0c27d5e4a 100644
--- a/src/runtime/test/host_port_test.cpp
+++ b/src/runtime/test/host_port_test.cpp
@@ -44,7 +44,7 @@ namespace dsn {
TEST(host_port_test, host_port_to_string)
{
{
- host_port hp = host_port("localhost", 8080);
+ host_port hp("localhost", 8080);
ASSERT_EQ("localhost:8080", hp.to_string());
}
@@ -56,7 +56,7 @@ TEST(host_port_test, host_port_to_string)
TEST(host_port_test, host_port_build)
{
- host_port hp = host_port("localhost", 8080);
+ host_port hp("localhost", 8080);
ASSERT_EQ(HOST_TYPE_IPV4, hp.type());
ASSERT_EQ(8080, hp.port());
ASSERT_EQ("localhost", hp.host());
@@ -276,11 +276,11 @@ void send_and_check_host_port_by_serialize(const
host_port &hp, dsn_msg_serializ
TEST(host_port_test, thrift_parser)
{
- host_port hp1 = host_port("localhost", 8080);
+ host_port hp1("localhost", 8080);
send_and_check_host_port_by_serialize(hp1, DSF_THRIFT_BINARY);
send_and_check_host_port_by_serialize(hp1, DSF_THRIFT_JSON);
- host_port hp2 = host_port("localhost", 1010);
+ host_port hp2("localhost", 1010);
send_and_check_host_port_by_serialize(hp2, DSF_THRIFT_BINARY);
send_and_check_host_port_by_serialize(hp2, DSF_THRIFT_JSON);
}
diff --git a/src/shell/command_helper.h b/src/shell/command_helper.h
index ca5a4c303..8b8301ebd 100644
--- a/src/shell/command_helper.h
+++ b/src/shell/command_helper.h
@@ -633,7 +633,7 @@ struct node_desc
inline bool fill_nodes(shell_context *sc, const std::string &type,
std::vector<node_desc> &nodes)
{
if (type == "all" || type == "meta-server") {
- for (auto &hp : sc->meta_list) {
+ for (const auto &hp : sc->meta_list) {
nodes.emplace_back("meta-server", hp);
}
}
diff --git a/src/shell/commands/recovery.cpp b/src/shell/commands/recovery.cpp
index 15d1aded0..9bb00ebfd 100644
--- a/src/shell/commands/recovery.cpp
+++ b/src/shell/commands/recovery.cpp
@@ -314,7 +314,7 @@ bool ddd_diagnose(command_executor *e, shell_context *sc,
arguments args)
}
out << " ----" << std::endl;
j = 0;
- for (const ::dsn::host_port &r : pinfo.config.hp_last_drops) {
+ for (const auto &r : pinfo.config.hp_last_drops) {
out << " last_drops[" << j++ << "]: "
<< "node(" << r.to_string() << ")";
if (j == (int)pinfo.config.hp_last_drops.size() - 1)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]