Ini adalah sesuatu yang tampaknya telah berubah antara pgAdmin4 5.1 dan 5.7. Saya telah melihat ini pada mesin yang telah terhubung ke hotspot seluler WiFi (tetapi bisa terjadi dalam keadaan lain).
Ini ada hubungannya dengan cara dns
library digunakan di Windows, jadi ini bisa terjadi pada aplikasi lain yang menggunakannya dengan cara yang sama.
Intinya, dns.Resolver
memindai registri Windows untuk semua antarmuka jaringan yang ditemukan di bawah HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\
Hotspot seluler WiFi yang terhubung dengan mesin telah menyetel DhcpDomain
kunci dengan nilai ".home
". dns.Resolver
menemukan nilai ini dan membaginya menggunakan titik menjadi beberapa label, salah satunya kosong. Itu menyebabkan pengecualian yang Anda sebutkan:dns.name.EmptyLabel: A DNS label is empty
.
Ini terjadi bahkan ketika jaringan WiFi dimatikan:itu adalah pengaturan terakhir yang telah digunakan dan dns.Resolver
tidak memeriksa apakah antarmuka telah diaktifkan.
Versi terbaru pgAdmin tampaknya merupakan versi lama dnspython (1.16.0), jadi saya tidak yakin apakah ini telah diperbaiki di versi yang lebih baru. Untuk saat ini, sepertinya ada dua opsi:
-
Hapus atau ubah
DhcpDomain
subkunci jika Anda menemukannya di salah satu subkunciHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\
(bahkan mungkin ada cara untuk memaksakan nilai itu melalui Panel Kontrol). -
Sambungkan ke jaringan lain yang tidak menyetel nilai ini.