I’ve tried googling this for ages and just can’t seem to find a solution. I’m using MongoDB atlas, but keep randomly getting this error:
pymongo.errors.ServerSelectionTimeoutError: ac-h4o62zv-shard-00-01.xrot0sj.mongodb.net:27017: [Errno -3] Temporary failure in name resolution,ac-h4o62zv-shard-00-02.xrot0sj.mongodb.net:27017: [Errno -3] Temporary failure in name resolution,ac-h4o62zv-shard-00-00.xrot0sj.mongodb.net:27017: [Errno -3] Temporary failure in name resolution, Timeout: 30s, Topology Description: <TopologyDescription id: 63c589aec4187723b4ae35fe, topology_type: ReplicaSetNoPrimary, servers: [<ServerDescription ('ac-h4o62zv-shard-00-00.xrot0sj.mongodb.net', 27017) server_type: Unknown, rtt: None, error=AutoReconnect('ac-h4o62zv-shard-00-00.xrot0sj.mongodb.net:27017: [Errno -3] Temporary failure in name resolution')>, <ServerDescription ('ac-h4o62zv-shard-00-01.xrot0sj.mongodb.net', 27017) server_type: Unknown, rtt: None, error=AutoReconnect('ac-h4o62zv-shard-00-01.xrot0sj.mongodb.net:27017: [Errno -3] Temporary failure in name resolution')>, <ServerDescription ('ac-h4o62zv-shard-00-02.xrot0sj.mongodb.net', 27017) server_type: Unknown, rtt: None, error=AutoReconnect('ac-h4o62zv-shard-00-02.xrot0sj.mongodb.net:27017: [Errno -3] Temporary failure in name resolution')>]>
I can change nothing in my code and it will go away after a few hours of not working. Then everything will be find for a few days and suddenly this again.
Does anyone know what’s causing this and what I can do to fix it?
*Connection Code: *
import pymongo, dns, os, hashlib
from pymongo.mongo_client import MongoClient
from pymongo.server_api import ServerApi
client = MongoClient(os.environ["MONGO"], server_api=ServerApi('1'))
db = ["dbname"]["collection"]
# code will work fine till here:
users = db.find({})
print(list(users))
The error seems to happen as soon as I try an insert
, find
or replace