DescriptionAdam Williamson
2019-02-14 21:46:37 UTC
I found a couple of openQA tests recently where packagekitd crashed during a FreeIPA client enrol operation (when realmd calls packagekit to install the necessary client packages). From the traceback, it's apparent that it's crashing when MirrorManager returns a 503 (which is a thing that's happening occasionally lately, I believe infra is looking into it):
Core was generated by `/usr/libexec/packagekitd'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 repo_mirrorlist_failure_cb (user_data=0xdeadbeef, message=0x7ff440136090 "Status code: 503 for https://mirrors.fed
oraproject.org/mirrorlist?repo=fedora-29&arch=x86_64", url=0x7ff440135640 "https://mirrors.fedoraproject.org/mirrorlis
t?repo=fedora-29&arch=x86_64", metadata=0x7ff4476f84b0 "https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-$rele
asever&arch=$basearch") at /usr/src/debug/libdnf-0.22.3-1.fc29.x86_64/libdnf/dnf-repo.cpp:1641
1641 /usr/src/debug/libdnf-0.22.3-1.fc29.x86_64/libdnf/dnf-repo.cpp: No such file or directory.
[Current thread is 1 (Thread 0x7ff45950b700 (LWP 1794))]
Thread 1 (Thread 0x7ff45950b700 (LWP 1794)):
#0 repo_mirrorlist_failure_cb (user_data=0xdeadbeef, message=0x7ff440136090 "Status code: 503 for https://mirrors.fed
oraproject.org/mirrorlist?repo=fedora-29&arch=x86_64", url=0x7ff440135640 "https://mirrors.fedoraproject.org/mirrorlis
t?repo=fedora-29&arch=x86_64", metadata=0x7ff4476f84b0 "https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-$rele
asever&arch=$basearch") at /usr/src/debug/libdnf-0.22.3-1.fc29.x86_64/libdnf/dnf-repo.cpp:1641
data = 0xdeadbeef
#1 0x00007ff458a9d59b in check_transfer_statuses (dd=<optimized out>, err=0x7ff45950a5f0) at /usr/src/debug/librepo-1
.9.1-1.fc29.x86_64/librepo/downloader.c:1718
...
I'll attach the full traceback. Obviously the main problem here is MirrorManager returning a 503, but surely packagekitd shouldn't *crash* when this happens?
Not sure if the bug should properly be assigned to PackageKit or libdnf or librepo, please re-assign if necessary.