I believe the connectionsPerHost parameter was changed to ConnectionPoolSettings.maxSize, as part of the new MongoDB driver design. Please take this with a pinch of salt, as I have not tested whether it is a perfectly equivalent option.
The description for threadsAllowedToBlockForConnectionMultiplier
is as follows, from the MongoDB documentation of MongoClientSettings.getConnectionPoolSettings() the Async driver:
Gets the settings for the connection provider in a settings object. This settings object wraps the values for minConnectionPoolSize, maxConnectionPoolSize, maxWaitTime, maxConnectionIdleTime and maxConnectionLifeTime, and uses maxConnectionPoolSize and threadsAllowedToBlockForConnectionMultiplier to calculate maxWaitQueueSize.
This behaviour can be observed in ConnectionPoolSettings.applyConnectionString():
maxWaitQueueSize(threadsAllowedToBlockForConnectionMultiplier * maxSize);
This behaviour appears to be similar, when compared to the description for the original MongoClientOptions.getThreadsAllowedToBlockForConnectionMultiplier():
This multiplier, multiplied with the connectionsPerHost setting, gives the maximum number of threads that may be waiting for a connection to become available from the pool. All further threads will get an exception right away. For example if connectionsPerHost is 10 and threadsAllowedToBlockForConnectionMultiplier is 5, then up to 50 threads can wait for a connection.