Skip to content

Commit 7da4d53

Browse files
committed
CSHARP-703: fixed issue with infinite loop and bad error message.
1 parent 2f316c7 commit 7da4d53

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

MongoDB.Driver/Communication/Proxies/DiscoveringMongoServerProxy.cs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -225,16 +225,17 @@ private void Discover(TimeSpan timeout)
225225
}
226226

227227
MongoServerInstance instance = null;
228-
var timeoutAt = DateTime.UtcNow;
229-
while ((instance = connectionQueue.Dequeue(timeout)) != null)
228+
var timeRemaining = timeout;
229+
var timeoutAt = DateTime.UtcNow + timeout;
230+
while ((instance = connectionQueue.Dequeue(timeRemaining)) != null)
230231
{
231232
if (instance.ConnectException == null)
232233
{
233234
CreateActualProxy(instance, connectionQueue);
234235
return;
235236
}
236237

237-
timeout = DateTime.UtcNow - timeoutAt;
238+
timeRemaining = timeoutAt - DateTime.UtcNow;
238239
}
239240

240241
throw new MongoConnectionException(string.Format("Unable to connect in the specified timeframe of '{0}'.", timeout));

0 commit comments

Comments
 (0)