summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBenety Goh <benety@mongodb.com>2015-09-15 10:31:22 -0400
committerBenety Goh <benety@mongodb.com>2015-09-17 10:11:56 -0400
commit6b32533b12fc331c91a372a9fa05692d75466280 (patch)
treebd4b0f4d1ffc51898d77adeda553f62324cb7952 /src
parentc1fafb61fb55320c39f5db68a6f4bd204c6c8104 (diff)
downloadmongo-6b32533b12fc331c91a372a9fa05692d75466280.tar.gz
SERVER-20346 NetworkInterfaceMock::runUntil() returns now()
Diffstat (limited to 'src')
-rw-r--r--src/mongo/executor/network_interface_mock.cpp3
-rw-r--r--src/mongo/executor/network_interface_mock.h3
2 files changed, 4 insertions, 2 deletions
diff --git a/src/mongo/executor/network_interface_mock.cpp b/src/mongo/executor/network_interface_mock.cpp
index 686f0b0198e..d62b13d87ae 100644
--- a/src/mongo/executor/network_interface_mock.cpp
+++ b/src/mongo/executor/network_interface_mock.cpp
@@ -270,7 +270,7 @@ void NetworkInterfaceMock::requeueAt(NetworkOperationIterator noi, Date_t dontAs
_unscheduled.splice(insertBefore, _processing, noi);
}
-void NetworkInterfaceMock::runUntil(Date_t until) {
+Date_t NetworkInterfaceMock::runUntil(Date_t until) {
stdx::unique_lock<stdx::mutex> lk(_mutex);
invariant(_currentlyRunning == kNetworkThread);
invariant(until > _now_inlock());
@@ -294,6 +294,7 @@ void NetworkInterfaceMock::runUntil(Date_t until) {
_waitingToRunMask |= kExecutorThread;
}
_runReadyNetworkOperations_inlock(&lk);
+ return _now_inlock();
}
void NetworkInterfaceMock::runReadyNetworkOperations() {
diff --git a/src/mongo/executor/network_interface_mock.h b/src/mongo/executor/network_interface_mock.h
index 3b62bd1f09d..0b231295595 100644
--- a/src/mongo/executor/network_interface_mock.h
+++ b/src/mongo/executor/network_interface_mock.h
@@ -170,10 +170,11 @@ public:
/**
* Runs the simulator forward until now() == until or hasReadyRequests() is true.
+ * Returns now().
*
* Will not return until the executor thread is blocked in waitForWorkUntil or waitForWork.
*/
- void runUntil(Date_t until);
+ Date_t runUntil(Date_t until);
/**
* Processes all ready, scheduled network operations.