-
Type:
Sub-task
-
Resolution: Done
-
Priority:
Minor - P4
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
None
-
None
-
None
-
None
-
None
-
None
-
None
Whatever parameter is given to maxPoolSize is used as a target for number of connections maintained to secondaries, regardless of surrounding conditions.
The connection attempt succeeds so long as maxPoolSize connections can be established simultaneously to the Primary (NODE-493), but the same number of connections is concurrently attempted on secondaries too, even if to do so has no benefit. Using a read-pref of primary, you still get maxPoolSize connections to every secondary, even when their priority is zero and thus cannot possibly ever be primary.
I don't think anybody expects connections to secondaries to be maintained at such potentially high levels.