mirror of
https://github.com/FairRootGroup/FairMQ.git
synced 2025-10-13 16:46:47 +00:00
Improve error handling
This commit is contained in:
parent
99ffb732f4
commit
6ee7e5fbf0
|
@ -47,9 +47,15 @@ auto Context::InitThreadPool(int numberIoThreads) -> void
|
||||||
|
|
||||||
for (int i = 1; i <= numberIoThreads; ++i) {
|
for (int i = 1; i <= numberIoThreads; ++i) {
|
||||||
fThreadPool.emplace_back([&, i, numberIoThreads]{
|
fThreadPool.emplace_back([&, i, numberIoThreads]{
|
||||||
|
try {
|
||||||
LOG(debug) << "OFI transport: I/O thread #" << i << " of " << numberIoThreads << " started";
|
LOG(debug) << "OFI transport: I/O thread #" << i << " of " << numberIoThreads << " started";
|
||||||
fIoContext.run();
|
fIoContext.run();
|
||||||
LOG(debug) << "OFI transport: I/O thread #" << i << " of " << numberIoThreads << " stopped";
|
LOG(debug) << "OFI transport: I/O thread #" << i << " of " << numberIoThreads << " stopped";
|
||||||
|
} catch (const std::exception& e) {
|
||||||
|
LOG(error) << "OFI transport: Uncaught exception in I/O thread #" << i << ": " << e.what();
|
||||||
|
} catch (...) {
|
||||||
|
LOG(error) << "OFI transport: Uncaught exception in I/O thread #" << i;
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -138,11 +138,16 @@ catch (const SilentSocketError& e)
|
||||||
// in case no connection could be established after trying a number of random ports from a range.
|
// in case no connection could be established after trying a number of random ports from a range.
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
catch (const SocketError& e)
|
catch (const std::exception& e)
|
||||||
{
|
{
|
||||||
LOG(error) << "OFI transport: " << e.what();
|
LOG(error) << "OFI transport: " << e.what();
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
catch (...)
|
||||||
|
{
|
||||||
|
LOG(error) << "OFI transport: Unknown exception in ofi::Socket::Bind";
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
auto Socket::BindControlEndpoint() -> void
|
auto Socket::BindControlEndpoint() -> void
|
||||||
{
|
{
|
||||||
|
@ -212,6 +217,11 @@ catch (const std::exception& e)
|
||||||
LOG(error) << "OFI transport: " << e.what();
|
LOG(error) << "OFI transport: " << e.what();
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
catch (...)
|
||||||
|
{
|
||||||
|
LOG(error) << "OFI transport: Unknown exception in ofi::Socket::Connect";
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
auto Socket::ConnectEndpoint(std::unique_ptr<asiofi::connected_endpoint>& endpoint, Band type) -> void
|
auto Socket::ConnectEndpoint(std::unique_ptr<asiofi::connected_endpoint>& endpoint, Band type) -> void
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue
Block a user