}
}
-int NVMeofGwMap::process_gw_map_gw_no_subsys_no_listeners(
+int NVMeofGwMap::process_gw_map_gw_no_subsystems(
const NvmeGwId &gw_id, const NvmeGroupKey& group_key, bool &propose_pending)
{
int rc = 0;
auto& gws_states = created_gws[group_key];
auto& gw_state = created_gws[group_key][gw_id];
bool do_failback = false;
+
dout(10) << "Find failback GW for GW " << gw_id << dendl;
for (auto& gw_state_it: gws_states) {
auto& st = gw_state_it.second;
int process_gw_map_gw_down(
const NvmeGwId &gw_id, const NvmeGroupKey& group_key,
bool &propose_pending);
- int process_gw_map_gw_no_subsys_no_listeners(
+ int process_gw_map_gw_no_subsystems(
const NvmeGwId &gw_id, const NvmeGroupKey& group_key,
bool &propose_pending);
void update_active_timers(bool &propose_pending);
std::stringstream sstrm1;
sstrm1 << state.availability;
f->dump_string("Availability", sstrm1.str());
- uint32_t num_listeners = 0;
- if (state.availability == gw_availability_t::GW_AVAILABLE) {
- for (auto &subs: state.subsystems) {
- num_listeners += subs.listeners.size();
- }
- f->dump_unsigned("num-listeners", num_listeners);
- }
sstrm1.str("");
for (auto &state_itr: map.created_gws[group_key][gw_id].sm_state) {
sstrm1 << " " << state_itr.first + 1 << ": "
if (avail == gw_availability_t::GW_UNAVAILABLE) {
pending_map.process_gw_map_gw_down(gw_id, group_key, propose_pending);
} else {
- pending_map.process_gw_map_gw_no_subsys_no_listeners(gw_id, group_key, propose_pending);
+ pending_map.process_gw_map_gw_no_subsystems(gw_id, group_key, propose_pending);
}
}
if (sub.size() == 0) {
avail = gw_availability_t::GW_CREATED;
- } else {
- bool listener_found = false;
- for (auto &subs: sub) {
- if (subs.listeners.size()) {
- listener_found = true;
- break;
- }
- }
- if (!listener_found) {
- avail = gw_availability_t::GW_CREATED;
- }
- }// for HA no-subsystems and no-listeners are same usecases
+ }
if (pending_map.created_gws[group_key][gw_id].subsystems != sub) {
dout(10) << "subsystems of GW changed, propose pending " << gw_id << dendl;
pending_map.created_gws[group_key][gw_id].subsystems = sub;