From: Kefu Chai Date: Wed, 23 Sep 2020 06:18:52 +0000 (+0800) Subject: test/crimson: better error message when bind fails X-Git-Tag: v16.1.0~1006^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=d9ee3a1818785a78915bb7ba9c68671117d8038a;p=ceph.git test/crimson: better error message when bind fails See also: https://tracker.ceph.com/issues/47324 Signed-off-by: Kefu Chai --- diff --git a/src/test/crimson/test_messenger.cc b/src/test/crimson/test_messenger.cc index 5a826b591e23..429509c43523 100644 --- a/src/test/crimson/test_messenger.cc +++ b/src/test/crimson/test_messenger.cc @@ -1599,8 +1599,18 @@ class FailoverTestPeer : public Dispatcher { cmd_msgr->set_auth_server(&dummy_auth); auto chained_dispatchers = seastar::make_lw_shared(); chained_dispatchers->push_back(*this); - return cmd_msgr->bind(entity_addrvec_t{cmd_peer_addr}).then([this, chained_dispatchers]() mutable { + return cmd_msgr->bind(entity_addrvec_t{cmd_peer_addr}).then( + [this, chained_dispatchers]() mutable { return cmd_msgr->start(chained_dispatchers); + }).handle_exception_type([cmd_peer_addr](const std::system_error& e) { + if (e.code() == std::errc::address_in_use) { + logger().error("FailoverTestPeer::init({}) " + "likely there is another instance of " + "unittest_seastar_messenger running", cmd_peer_addr); + } else { + logger().error("FailoverTestPeer::init({}): {}", cmd_peer_addr, e.what()); + } + abort(); }); }