Dette er noget, der ser ud til at have ændret sig mellem pgAdmin4 5.1 og 5.7. Jeg har set dette på en maskine, der var blevet forbundet til et WiFi-mobilhotspot (men det kunne ske under andre omstændigheder).
Det har noget at gøre med måden dns
på biblioteket bruges på Windows, så dette kan ske med andre programmer, der bruger det på samme måde.
Grundlæggende er dns.Resolver
scanner Windows-registreringsdatabasen for alle netværksgrænseflader, der findes under HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\
Det mobile WiFi-hotspot, som maskinen var blevet tilsluttet, havde indstillet et DhcpDomain
nøgle med værdien ".home
". dns.Resolver
fandt denne værdi og opdelte den ved hjælp af prikken i flere etiketter, hvoraf en af dem er tom. Det forårsagede den undtagelse, du nævner:dns.name.EmptyLabel: A DNS label is empty
.
Dette skete, selv når WiFi-netværket var slået fra:det var de sidste indstillinger, der havde været i brug og dns.Resolver
kontrollerede ikke, om grænsefladen var aktiveret.
Den seneste version af pgAdmin ser ud til at være en ældre version af dnspython (1.16.0), så jeg er ikke sikker på, om dette er blevet rettet i nyere versioner. Indtil videre ser der ud til at være to muligheder:
-
Slet eller skift
DhcpDomain
undernøgle, hvis du finder den i en af undernøglerne tilHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\
(der kan endda være en måde at tvinge denne værdi gennem kontrolpanelet). -
Opret forbindelse til et andet netværk, der ikke angiver denne værdi.