java.util.NoSuchElementException: null at java.util.ArrayDeque.removeFirst(ArrayDeque.java:280) ~[na:1.8.0_131] at java.util.ArrayDeque.remove(ArrayDeque.java:447) ~[na:1.8.0_131] at shaded.google.common.collect.EvictingQueue.add(EvictingQueue.java:107) ~[org.reactivemongo.reactivemongo-shaded-0.12.3.jar:0.12.3] at shaded.google.common.collect.EvictingQueue.offer(EvictingQueue.java:91) ~[org.reactivemongo.reactivemongo-shaded-0.12.3.jar:0.12.3] at reactivemongo.core.actors.MongoDBSystem$class.go$1(MongoDBSystem.scala:155) [org.reactivemongo.reactivemongo_2.11-0.12.3.jar:0.12.3] at reactivemongo.core.actors.MongoDBSystem$class.reactivemongo$core$actors$MongoDBSystem$$updateHistory(MongoDBSystem.scala:163) [org.reactivemongo.reactivemongo_2.11-0.12.3.jar:0.12.3] at reactivemongo.core.actors.MongoDBSystem$$anonfun$8$$anonfun$apply$9.apply(MongoDBSystem.scala:130) [org.reactivemongo.reactivemongo_2.11-0.12.3.jar:0.12.3] at reactivemongo.core.actors.MongoDBSystem$$anonfun$8$$anonfun$apply$9.apply(MongoDBSystem.scala:129) [org.reactivemongo.reactivemongo_2.11-0.12.3.jar:0.12.3] at reactivemongo.core.actors.MongoDBSystem$class.updateNodeSet(MongoDBSystem.scala:969) [org.reactivemongo.reactivemongo_2.11-0.12.3.jar:0.12.3] at reactivemongo.core.actors.StandardDBSystem.updateNodeSet(MongoDBSystem.scala:1318) [org.reactivemongo.reactivemongo_2.11-0.12.3.jar:0.12.3] at reactivemongo.core.actors.MongoDBSystem$$anonfun$reactivemongo$core$actors$MongoDBSystem$$onIsMaster$1.apply$mcV$sp(MongoDBSystem.scala:935) [org.reactivemongo.reactivemongo_2.11-0.12.3.jar:0.12.3] at akka.actor.Scheduler$$anon$4.run(Scheduler.scala:126) [com.typesafe.akka.akka-actor_2.11-2.4.16.jar:na] at akka.dispatch.TaskInvocation.run(AbstractDispatcher.scala:39) [com.typesafe.akka.akka-actor_2.11-2.4.16.jar:na] at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:415) [com.typesafe.akka.akka-actor_2.11-2.4.16.jar:na] at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260) [org.scala-lang.scala-library-2.11.8.jar:na] at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339) [org.scala-lang.scala-library-2.11.8.jar:na] at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979) [org.scala-lang.scala-library-2.11.8.jar:na] at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107) [org.scala-lang.scala-library-2.11.8.jar:na]
Have you tried recent releases?
On the other side the effective level of log is configurable on application side (what should anyway be done for prod ready apps).
To clarify, the history is not updated each time there is a read or write query to the DB, but when there are state changes about the ReplicaSet.
So even if there is no failure on the client/driver side when such warning happens, seeing that frequently can be a sign a instability on the nodes side with excessive state changes.
Also as previously said, if there are so many ReplicaSet changes that it such non fatal issue occurs when updating the history, the ReplicaSet stability should be investigated (even on very large/prod RS, such warning is not frequent).
Also as previously said, if there are so many ReplicaSet changes that it such non fatal issue occurs when updating the history, the ReplicaSet stability should be investigated (even on very large/prod RS, such warning is not frequent).
It should