summaryrefslogtreecommitdiff
path: root/src/mongo/s/query/async_results_merger.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/s/query/async_results_merger.cpp')
-rw-r--r--src/mongo/s/query/async_results_merger.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/mongo/s/query/async_results_merger.cpp b/src/mongo/s/query/async_results_merger.cpp
index cc158026af7..18f5b3a6c07 100644
--- a/src/mongo/s/query/async_results_merger.cpp
+++ b/src/mongo/s/query/async_results_merger.cpp
@@ -332,8 +332,9 @@ StatusWith<executor::TaskExecutor::EventHandle> AsyncResultsMerger::nextEvent()
for (size_t i = 0; i < _remotes.size(); ++i) {
auto& remote = _remotes[i];
- // It is illegal to call this method if there is an error received from any shard.
- invariant(remote.status.isOK());
+ if (!remote.status.isOK()) {
+ return remote.status;
+ }
if (!remote.hasNext() && !remote.exhausted() && !remote.cbHandle.isValid()) {
// If we already have established a cursor with this remote, and there is no outstanding