Hey all, we've been running Reactivemongo 0.16 for a long time, and I recently tried to upgrade to 1.0.7. When running locally and after deployment everything works as expected, but after about ~3hours we start to see requests hang and never finish.
I combed through the trace logs and it looks like the request is successfully submitted (`Request 20492 successful on channel #f943079d...`), and added to the awaitingResponses object, but the channel is never written to again. All of the hanging requests continue to be shown in the `awaitingResponses` property of the `Registering awaiting response for requestID ...` log. The `Channel received message Response...` and `Got a response from f943079d to 20492!` messages are never logged for the hanging requests.
All future requests that use that channel will hang as well.
The requests do seem to have a node name in common (our -mongo-secondary.service.consul consul address), however I saw requests to that node succeed some of the time, when they wrote to a different channel.
I can share more of the trace logs if that would be helpful. This has consumed a large amount of time so I'm probably going to scrap the upgrade unless this is a known issue with a known fix.
Command: `coll.find(selector).cursor[T]().collect[List](-1, Cursor.
FailOnError())`
DB Instantiation:
private val driver = new AsyncDriver
driver.connect(serversOpt.get, MongoConnectionOptions(
keepAlive = true,
nbChannelsPerNode = 25,
readPreference = ReadPreference.secondaryPreferred,
readConcern = ReadConcern.Local,
sslEnabled = false,
writeConcern = Journaled))
ReactiveMongo Version: 1.0.7
Akka Version: akka-actor_2.11:2.3.13
Mongo Version: mongo:4.2.6
Scala Version: 2.11.12
Play Version: play_2.11:2.4.11