diff --git a/src/osd_cluster.cpp b/src/osd_cluster.cpp index 05098d4c..469bb25d 100644 --- a/src/osd_cluster.cpp +++ b/src/osd_cluster.cpp @@ -457,7 +457,8 @@ void osd_t::renew_lease() if (err == "" && data["result"]["TTL"].string_value() == "") { // Die - throw std::runtime_error("etcd lease has expired"); + fprintf(stderr, "Error refreshing etcd lease\n"); + force_stop(1); } if (err != "") { @@ -466,7 +467,8 @@ void osd_t::renew_lease() if (etcd_failed_attempts > st_cli.max_etcd_attempts) { // Die - throw std::runtime_error("Cluster connection failed"); + fprintf(stderr, "Cluster connection failed\n"); + force_stop(1); } // Retry tfd->set_timer(st_cli.etcd_quick_timeout, false, [this](int timer_id) diff --git a/src/osd_peering.cpp b/src/osd_peering.cpp index 9536e0fc..22d27d02 100644 --- a/src/osd_peering.cpp +++ b/src/osd_peering.cpp @@ -396,7 +396,9 @@ void osd_t::submit_list_subop(osd_num_t role_osd, pg_peering_state_t *ps) { if (op->bs_op->retval < 0) { - throw std::runtime_error("local OP_LIST failed"); + printf("Local OP_LIST failed: retval=%d\n", op->bs_op->retval); + force_stop(1); + return; } add_bs_subop_stats(op); printf(