I have following setup. A replica set with 3 members.
region1.mongodb.com, region2.mongodb.com, region3.mongodb.com
I have configured my apps to use 'near' reads so servers in "region1" reads from region1.mongodb.com and so on.
Now, issue comes when any one of replicaset member is down. For example, if say region2.mongodb.com is down, my application in region2 always keeps trying to connect to region2.mongodb.com and keeps crashing. It never moves on to select region1.mongodb.com or region3.mongodb.com and continue to work.
The problem gets resolved when I put useUnifiedTopology: false.