ऐसा लगता है कि यह कुछ ऐसा है जो pgAdmin4 5.1 और 5.7 के बीच बदल गया है। मैंने इसे एक ऐसी मशीन पर देखा है जो एक वाईफाई मोबाइल हॉटस्पॉट से जुड़ा था (लेकिन यह अन्य परिस्थितियों में हो सकता है)।
इसका dns
. के तरीके से कुछ लेना-देना है लाइब्रेरी का उपयोग विंडोज़ पर किया जाता है, इसलिए यह अन्य अनुप्रयोगों के साथ भी हो सकता है जो इसे उसी तरह उपयोग करते हैं।
अनिवार्य रूप से, dns.Resolver
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\
के तहत मिलने वाले सभी नेटवर्क इंटरफेस के लिए विंडोज रजिस्ट्री को स्कैन करता है
जिस वाईफाई मोबाइल हॉटस्पॉट से मशीन कनेक्ट की गई थी, उसने एक DhcpDomain
. सेट किया था मूल्य के साथ कुंजी ".home
". dns.Resolver
इस मान को पाया और डॉट का उपयोग करके इसे कई लेबलों में विभाजित किया, उनमें से एक खाली था। यह आपके द्वारा उल्लिखित अपवाद का कारण बना:dns.name.EmptyLabel: A DNS label is empty
।
यह तब भी हुआ जब वाईफाई नेटवर्क बंद था:वे अंतिम सेटिंग्स थीं जो उपयोग में थीं और dns.Resolver
जाँच नहीं की कि इंटरफ़ेस सक्षम किया गया था या नहीं।
pgAdmin का नवीनतम संस्करण dnspython . का पुराना संस्करण प्रतीत होता है (1.16.0), इसलिए मुझे यकीन नहीं है कि इसे हाल के संस्करणों में ठीक किया गया है। अभी के लिए, दो विकल्प प्रतीत होते हैं:
-
DhcpDomain
को मिटाएं या बदलें उपकुंजी यदि आप इसेHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\
की उपकुंजियों में पाते हैं (नियंत्रण कक्ष के माध्यम से उस मान को लागू करने का एक तरीका भी हो सकता है)। -
किसी दूसरे नेटवर्क से कनेक्ट करें जो यह मान सेट नहीं करता है।