From 93028f484896115d0bc69334fe36fed73102508a Mon Sep 17 00:00:00 2001 From: Asias He Date: Tue, 2 Jan 2024 10:28:12 +0800 Subject: [PATCH] repair: Pass raft_address_map to repair service It is needed to translate hostid to ip address. --- main.cc | 2 +- repair/row_level.cc | 3 +++ repair/row_level.hh | 3 +++ 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/main.cc b/main.cc index 9bc1afe6c3..2c57b6cffb 100644 --- a/main.cc +++ b/main.cc @@ -1568,7 +1568,7 @@ To start the scylla server proper, simply invoke as: scylla server (or just scyl // both) supervisor::notify("starting repair service"); auto max_memory_repair = memory::stats().total_memory() * 0.1; - repair.start(std::ref(gossiper), std::ref(messaging), std::ref(db), std::ref(proxy), std::ref(bm), std::ref(sys_dist_ks), std::ref(sys_ks), std::ref(view_update_generator), std::ref(task_manager), std::ref(mm), max_memory_repair).get(); + repair.start(std::ref(gossiper), std::ref(messaging), std::ref(db), std::ref(proxy), std::ref(raft_address_map), std::ref(bm), std::ref(sys_dist_ks), std::ref(sys_ks), std::ref(view_update_generator), std::ref(task_manager), std::ref(mm), max_memory_repair).get(); auto stop_repair_service = defer_verbose_shutdown("repair service", [&repair] { repair.stop().get(); }); diff --git a/repair/row_level.cc b/repair/row_level.cc index 4ddbd8b9e0..9360fc6536 100644 --- a/repair/row_level.cc +++ b/repair/row_level.cc @@ -47,6 +47,7 @@ #include #include "db/system_keyspace.hh" #include "service/storage_proxy.hh" +#include "service/raft/raft_address_map.hh" #include "db/batchlog_manager.hh" #include "idl/position_in_partition.dist.hh" #include "idl/partition_checksum.dist.hh" @@ -3149,6 +3150,7 @@ repair_service::repair_service(distributed& gossiper, netw::messaging_service& ms, sharded& db, sharded& sp, + sharded& addr_map, sharded& bm, sharded& sys_dist_ks, sharded& sys_ks, @@ -3160,6 +3162,7 @@ repair_service::repair_service(distributed& gossiper, , _messaging(ms) , _db(db) , _sp(sp) + , _addr_map(addr_map) , _bm(bm) , _sys_dist_ks(sys_dist_ks) , _sys_ks(sys_ks) diff --git a/repair/row_level.hh b/repair/row_level.hh index 0b71853739..abb875ca7d 100644 --- a/repair/row_level.hh +++ b/repair/row_level.hh @@ -16,6 +16,7 @@ #include "locator/abstract_replication_strategy.hh" #include #include +#include "service/raft/raft_address_map.hh" using namespace seastar; @@ -89,6 +90,7 @@ class repair_service : public seastar::peering_sharded_service { netw::messaging_service& _messaging; sharded& _db; sharded& _sp; + sharded& _addr_map; sharded& _bm; sharded& _sys_dist_ks; sharded& _sys_ks; @@ -115,6 +117,7 @@ public: netw::messaging_service& ms, sharded& db, sharded& sp, + sharded& addr_map, sharded& bm, sharded& sys_dist_ks, sharded& sys_ks,