diff options
author | Jason Carey <jcarey@argv.me> | 2016-06-15 16:25:33 -0400 |
---|---|---|
committer | Jason Carey <jcarey@argv.me> | 2016-06-24 17:32:35 -0400 |
commit | 59ec7595abf1971122fa21fa7f2c211c3292dbeb (patch) | |
tree | 00435648ac4b9043b87d547e7f25ce64d2b1e4a1 | |
parent | 5e352923ca2c04e85efd4ed65c1448dbb6e15f2d (diff) | |
download | mongo-59ec7595abf1971122fa21fa7f2c211c3292dbeb.tar.gz |
SERVER-24582 handle errors in asio close
(cherry picked from commit b370d7ef98005a32ae9534a7a4f62fb7539ab85d)
-rw-r--r-- | src/mongo/executor/async_stream_common.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/mongo/executor/async_stream_common.h b/src/mongo/executor/async_stream_common.h index 059cad53b9f..6f7bd5eff63 100644 --- a/src/mongo/executor/async_stream_common.h +++ b/src/mongo/executor/async_stream_common.h @@ -42,9 +42,15 @@ void destroyStream(ASIOStream* stream, bool connected) { if (!connected) { return; } + std::error_code ec; + stream->shutdown(asio::ip::tcp::socket::shutdown_both, ec); - stream->close(); + if (ec) { + logCloseFailed(ec); + } + + stream->close(ec); if (ec) { logCloseFailed(ec); } |