-
Type: Improvement
-
Resolution: Unresolved
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: Internal Code
-
Server Programmability
Any exception thrown while ending an ASIO session is currently absorbed by a log statement and never returned to the caller:
void end() override { if (getSocket().is_open()) { std::error_code ec; getSocket().shutdown(GenericSocket::shutdown_both, ec); if ((ec) && (ec != asio::error::not_connected)) { LOGV2_ERROR(23841, "Error shutting down socket: {error}", "Error shutting down socket", "error"_attr = ec.message()); } } }
We should investigate alternatives to improve handling of exceptions.
- is related to
-
SERVER-58204 Instrumentation for socket lifecycle events
- Closed
-
SERVER-57639 Decrease the amount of logs emitted when closing a connection in v5.0
- Closed