La respuesta correcta, después de mucha sangre y sudor, es la siguiente:
- Para preferir todas las lecturas/consultas, presione las secundarias, solo slaveOk() necesita ser configurado
- Para preferir solo las lecturas seleccionadas, use secundarias, no configure slaveOk() y use queryNonPrimary() en cambio por consulta
También es una buena práctica establecer una preocupación de escritura adecuada cuando se usan conjuntos de réplicas, así:
mongo.setWriteConcern(WriteConcern.REPLICAS_SAFE);