summaryrefslogtreecommitdiff
path: root/src/mongo/executor/network_interface_asio.cpp
diff options
context:
space:
mode:
authorJason Carey <jcarey@argv.me>2015-09-02 16:19:04 -0400
committerJason Carey <jcarey@argv.me>2015-09-09 13:28:53 -0400
commit08557952c61958166265817ca8bd0c991c01dd59 (patch)
tree5095403149b1f1109bd20977429a2c3afb954968 /src/mongo/executor/network_interface_asio.cpp
parent80eff9c7d945b0c447261de8733a0fd154e32d27 (diff)
downloadmongo-08557952c61958166265817ca8bd0c991c01dd59.tar.gz
SERVER-19769 Fixups for Connection Pooling
Various fixes for connection pooling
Diffstat (limited to 'src/mongo/executor/network_interface_asio.cpp')
-rw-r--r--src/mongo/executor/network_interface_asio.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/mongo/executor/network_interface_asio.cpp b/src/mongo/executor/network_interface_asio.cpp
index c4c31596049..01b36857900 100644
--- a/src/mongo/executor/network_interface_asio.cpp
+++ b/src/mongo/executor/network_interface_asio.cpp
@@ -61,9 +61,9 @@ NetworkInterfaceASIO::NetworkInterfaceASIO(
_resolver(_io_service),
_state(State::kReady),
_streamFactory(std::move(streamFactory)),
- _isExecutorRunnable(false),
_connectionPool(stdx::make_unique<connection_pool_asio::ASIOImpl>(this),
- _options.connectionPoolOptions) {}
+ _options.connectionPoolOptions),
+ _isExecutorRunnable(false) {}
std::string NetworkInterfaceASIO::getDiagnosticString() {
str::stream output;
@@ -152,6 +152,7 @@ void NetworkInterfaceASIO::startCommand(const TaskExecutor::CallbackHandle& cbHa
}
onFinish(swConn.getStatus());
+ signalWorkAvailable();
return;
}
@@ -182,11 +183,11 @@ void NetworkInterfaceASIO::startCommand(const TaskExecutor::CallbackHandle& cbHa
_beginCommunication(op);
};
- // TODO: thread some higher level timeout through, rather than 10 seconds,
+ // TODO: thread some higher level timeout through, rather than 5 minutes,
// once we make timeouts pervasive in this api.
asio::post(
_io_service,
- [this, request, nextStep] { _connectionPool.get(request.target, Seconds(10), nextStep); });
+ [this, request, nextStep] { _connectionPool.get(request.target, Minutes(5), nextStep); });
}
void NetworkInterfaceASIO::cancelCommand(const TaskExecutor::CallbackHandle& cbHandle) {