In the case of a sharded client, all of our nodes that are provided
should be mongos nodes, and thus all should be primary. The read
preference thusly is not handled by the driver, but by the mongos server
and all read operations should pass through the primary mongos.
The case where we have multiple mongos is not handled here, as the
driver does not currently support having multiple primary nodes
[ RUBY-542 ]