MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Impossible de se connecter à la base de données Mongo Cloud mongodb dans Golang sur Ubuntu

impossible de démarshaler le message DNS

Ce n'est pas tout à fait lié au pilote MongoDB Go.

Il existe un correctif dans Go version 1.11.x #10622 net :les noms de domaine cibles dans les enregistrements SRV ne doivent pas être compressés, ce qui resserre la manière dont les enregistrements SRV sont lus pour suivre la RFC-2782.

Si un serveur DNS faisant autorité (non conforme) envoie un enregistrement SRV en utilisant la compression de nom de domaine, le net.lookupSRV() lancera une erreur avec cannot unmarshal DNS message (net/lookup_unix.go#L130). Par exemple, le Docker DNS intégré effectue peut-être la compression du nom du serveur.

Les solutions de contournement pour Go v1.11 sont :

  • Utiliser l'URI MongoDB non-SRV
  • Mettre à jour le contenu de /etc/resolv.conf en remplaçant le nameserver d'utiliser un serveur DNS conforme et/ou public c'est-à-dire 1.1.1.1 ou 8.8.8.8

Voir aussi GODRIVER-829