Bug 2149379
| Summary: | dnf5 crash with Assertion 'progress_bar != nullptr' | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Zbigniew Jędrzejewski-Szmek <zbyszek> | ||||
| Component: | dnf5 | Assignee: | Jan Kolarik <jkolarik> | ||||
| Status: | CLOSED RAWHIDE | QA Contact: | |||||
| Severity: | unspecified | Docs Contact: | |||||
| Priority: | high | ||||||
| Version: | rawhide | CC: | customercare, daniel.mach, jkolarik, jmracek, jrohel, mblaha, nsella, pkratoch, ppisar, praiskup, rpm-software-management | ||||
| Target Milestone: | --- | Keywords: | Reopened, Triaged | ||||
| Target Release: | --- | ||||||
| Hardware: | Unspecified | ||||||
| OS: | Unspecified | ||||||
| Whiteboard: | |||||||
| Fixed In Version: | dnf5-5.0.4-2.fc38 | Doc Type: | If docs needed, set a value | ||||
| Doc Text: | Story Points: | --- | |||||
| Clone Of: | Environment: | ||||||
| Last Closed: | 2023-02-03 13:03:46 UTC | Type: | Bug | ||||
| Regression: | --- | Mount Type: | --- | ||||
| Documentation: | --- | CRM: | |||||
| Verified Versions: | Category: | --- | |||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||
| Embargoed: | |||||||
| Attachments: |
|
||||||
|
Description
Zbigniew Jędrzejewski-Szmek
2022-11-29 18:41:32 UTC
Hmm, this is repeatable. 'dnf clean packages' didn't help. After 'dnf clean all', it seems to crash too: [ 0/49] Total ???% basic_string::_M_create This is with dnf5-5.0.1-20221128005819.1.gf5095a68.fc37.x86_64. (In reply to Zbigniew Jędrzejewski-Szmek from comment #0) > In the log I see: > systemd-coredump[660416]: Resource limits disable core dumping for process > 660412 (dnf5). > systemd-coredump[660416]: [🡕] Process 660412 (dnf5) of user 0 dumped core. > I'll investigate this, but if dnf5 disables coredumping, then for please > please stop doing this. Ah, this seems to be caused by sudo. $ sudo grep core /proc/self/limits Max core file size 0 0 bytes This is painful for dnf5, because it's a C++ app that is often invoked via sudo. Disabling coredumps in this way is a major misfeature, but it'll need to be fixed in sudo or somewhere else in the configuration where that is set. Created attachment 1932818 [details]
thread apply all bt full
(gdb) bt #0 __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44 #1 0x00007fdc1c2afee3 in __pthread_kill_internal (signo=6, threadid=<optimized out>) at pthread_kill.c:78 #2 0x00007fdc1c25faa6 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26 #3 0x00007fdc1c2497fc in __GI_abort () at abort.c:79 #4 0x00007fdc1c4a2b97 in __gnu_cxx::__verbose_terminate_handler() () at ../../../../libstdc++-v3/libsupc++/vterminate.cc:95 #5 0x00007fdc1c4ae48c in __cxxabiv1::__terminate(void (*)()) (handler=<optimized out>) at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:48 #6 0x00007fdc1c4ae4f7 in std::terminate() () at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:58 #7 0x00007fdc1c4ae758 in __cxxabiv1::__cxa_throw(void*, std::type_info*, void (*)(void*)) (obj=<optimized out>, tinfo=0x7fdc1cb93ac0 <typeinfo for fmt::v9::format_error>, dest=0x7fdc1cb78a80 <fmt::v9::format_error::~format_error()>) at ../../../../libstdc++-v3/libsupc++/eh_throw.cc:98 #8 0x00007fdc1cb778b6 in fmt::v9::detail::throw_format_error(char const*) (message=message@entry=0x7fdc1cb8e3fe "argument not found") at /usr/src/debug/fmt-9.1.0-1.fc37.x86_64/include/fmt/format-inl.h:44 #9 0x00007fdc1cb82213 in fmt::v9::detail::error_handler::on_error(char const*) (message=0x7fdc1cb8e3fe "argument not found", this=<optimized out>) at /usr/src/debug/fmt-9.1.0-1.fc37.x86_64/include/fmt/core.h:638 #10 fmt::v9::detail::vformat_to<char>(fmt::v9::detail::buffer<char>&, fmt::v9::basic_string_view<char>, fmt::v9::basic_format_args<fmt::v9::basic_format_context<std::conditional<std::is_same<fmt::v9::type_identity<char>::type, char>::value, fmt::v9::appender, std::back_insert_iterator<fmt::v9::detail::buffer<fmt::v9::type_identity<char>::type> > >::type, fmt::v9::type_identity<char>::type> >, fmt::v9::detail::locale_ref)::format_handler::on_arg_id(fmt::v9::basic_string_view<char>) (id=..., this=<optimized out>) at /usr/src/debug/fmt-9.1.0-1.fc37.x86_64/include/fmt/format.h:4104 #11 fmt::v9::detail::parse_replacement_field<char, fmt::v9::detail::vformat_to<char>(fmt::v9::detail::buffer<char>&, fmt::v9::basic_string_view<char>, fmt::v9::basic_format_args<fmt::v9::basic_format_context<std::conditional<std::is_same<fmt::v9::type_identity<char>::type, char>::value, fmt::v9::appender, std::back_insert_iterator<fmt::v9::detail::buffer<fmt::v9::type_identity<char>::type> > >::type, fmt::v9::type_identity<char>::type> >, fmt::v9::detail::locale_ref)::format_handler&>(char const*, char const*, fmt::v9::detail::vformat_to<char>(fmt::v9::detail::buffer<char>&, fmt::v9::basic_string_view<char>, fmt::v9::basic_format_args<fmt::v9::basic_format_context<std::conditional<std::is_same<fmt::v9::type_identity<char>::type, char>::value, fmt::v9::appender, std::back_insert_iterator<fmt::v9::detail::buffer<fmt::v9::type_identity<char>::type> > >::type, fmt::v9::type_identity<char>::type> >, fmt::v9::detail::locale_ref)::format_handler&)::id_adapter::operator()(fmt::v9::basic_string_view<char>) (id=..., this=<optimized out>) at /usr/src/debug/fmt-9.1.0-1.fc37.x86_64/include/fmt/core.h:2643 #12 fmt::v9::detail::do_parse_arg_id<char, fmt::v9::detail::parse_replacement_field<char, fmt::v9::detail::vformat_to<char>(fmt::v9::detail::buffer<char>&, fmt::v9::basic_string_view<char>, fmt::v9::basic_format_args<fmt::v9::basic_format_context<std::conditional<std::is_same<fmt::v9::type_identity<char>::type, char>::value, fmt::v9::appender, std::back_insert_iterator<fmt::v9::detail::buffer<fmt::v9::type_identity<char>::type> > >::type, fmt::v9::type_identity<char>::type> >, fmt::v9::detail::locale_ref)::format_handler&>(char const*, char const*, fmt::v9::detail::vformat_to<char>(fmt::v9::detail::buffer<char>&, fmt::v9::basic_string_view<char>, fmt::v9::basic_format_args<fmt::v9::basic_format_context<std::conditional<std::is_same<fmt::v9::type_identity<char>::type, char>::value, fmt::v9::appender, std::back_insert_iterator<fmt::v9::detail::buffer<fmt::v9::type_identity<char>::type> > >::type, fmt::v9::type_identity<char>::type> >, fmt::v9::detail::locale_ref)::format_handler&)::id_adapter&>(char const*, char const*, fmt::v9::detail::vformat_to<char>(fmt::v9::detail::buffer<char>&, fmt::v9::basic_string_view<char>, fmt::v9::basic_format_args<fmt::v9::basic_format_context<std::conditional<std::is_same<fmt::v9::type_identity<char>::type, char>::value, fmt::v9::appender, std::back_insert_iterator<fmt::v9::detail::buffer<fmt::v9::type_identity<char>::type> > >::type, fmt::v9::type_identity<char>::type> >, fmt::v9::detail::locale_ref)::format_handler&) (handler=<optimized out>, end=<optimized out>, begin=<optimized out>) at /usr/src/debug/fmt-9.1.0-1.fc37.x86_64/include/fmt/core.h:2429 #13 fmt::v9::detail::parse_arg_id<char, fmt::v9::detail::parse_replacement_field<char, fmt::v9::detail::vformat_to<char>(fmt::v9::detail::buffer<char>&, fmt::v9::basic_string_view<char>, fmt::v9::basic_format_args<fmt::v9::basic_format_context<std::conditional<std::is_same<fmt::v9::type_identity<char>::type, char>::value, fmt::v9::appender, std::back_insert_iterator<fmt::v9::detail::buffer<fmt::v9::type_identity<char>::type> > >::type, fmt::v9::type_identity<char>::type> >, fmt::v9::detail::locale_ref)::format_handler&>(char const*, char const*, fmt::v9::detail::vformat_to<char>(fmt::v9::detail::buffer<char>&, fmt::v9::basic_string_view<char>, fmt::v9::basic_format_args<fmt::v9::basic_format_context<std::conditional<std::is_same<fmt::v9::type_identity<char>::type, char>::value, fmt::v9::appender, std::back_insert_iterator<fmt::v9::detail::buffer<fmt::v9::type_identity<char>::type> > >::type, fmt::v9::type_identity<char>::type> >, fmt::v9::detail::locale_ref)::format_handler&)::id_adapter&>(char const*, char const*, fmt::v9::detail::vformat_to<char>(fmt::v9::detail::buffer<char>&, fmt::v9::basic_string_view<char>, fmt::v9::basic_format_args<fmt::v9::basic_format_context<std::conditional<std::is_same<fmt::v9::type_identity<char>::type, char>::value, fmt::v9::appender, std::back_insert_iterator<fmt::v9::detail::buffer<fmt::v9::type_identity<char>::type> > >::type, fmt::v9::type_identity<char>::type> >, fmt::v9::detail::locale_ref)::format_handler&) (handler=<optimized out>, end=<optimized out>, begin=<optimized out>) at /usr/src/debug/fmt-9.1.0-1.fc37.x86_64/include/fmt/core.h:2437 #14 fmt::v9::detail::parse_replacement_field<char, fmt::v9::detail::vformat_to<char>(fmt::v9::detail::buffer<char>&, fmt::v9::basic_string_view<char>, fmt::v9::basic_format_args<fmt::v9::basic_format_context<std::conditional<std::is_same<fmt::v9::type_identity<char>::type, char>::value, fmt::v9::appender, std::back_insert_iterator<fmt::v9::detail::buffer<fmt::v9::type_identity<char>::type> > >::type, fmt::v9::type_identity<char>::type> >, fmt::v9::detail::locale_ref)::format_handler&>(char const*, char const*, fmt::v9::detail::vformat_to<char>(fmt::v9::detail::buffer<char>&, fmt::v9::basic_string_view<char>, fmt::v9::basic_format_args<fmt::v9::basic_format_context<std::conditional<std::is_same<fmt::v9::type_identity<char>::type, char>::value, fmt::v9::appender, std::back_insert_iterator<fmt::v9::detail::buffer<fmt::v9::type_identity<char>::type> > >::type, fmt::v9::type_identity<char>::type> >, fmt::v9::detail::locale_ref)::format_handler&) (begin=<optimized out>, end=0x7fdc145390e1 "", handler=<optimized out>) at /usr/src/debug/fmt-9.1.0-1.fc37.x86_64/include/fmt/core.h:2658 #15 0x00007fdc1cb829ce in fmt::v9::detail::parse_format_string<false, char, fmt::v9::detail::vformat_to<char>(fmt::v9::detail::buffer<char>&, fmt::v9::basic_string_view<char>, fmt::v9::basic_format_args<fmt::v9::basic_format_context<std::conditional<std::is_same<fmt::v9::type_identity<char>::type, char>::value, fmt::v9::appender, std::back_insert_iterator<fmt::v9::detail::buffer<fmt::v9::type_identity<char>::type> > >::type, fmt::v9::type_identity<char>::type> >, fmt::v9::detail::locale_ref)::format_handler>(fmt::v9::basic_string_view<char>, fmt::v9::detail::vformat_to<char>(fmt::v9::detail::buffer<char>&, fmt::v9::basic_string_view<char>, fmt::v9::basic_format_args<fmt::v9::basic_format_context<std::conditional<std::is_same<fmt::v9::type_identity<char>::type, char>::value, fmt::v9::appender, std::back_insert_iterator<fmt::v9::detail::buffer<fmt::v9::type_identity<char>::type> > >::type, fmt::v9::type_identity<char>::type> >, fmt::v9::detail::locale_ref)::format_handler&&) (handler=..., format_str=...) at /usr/src/debug/fmt-9.1.0-1.fc37.x86_64/include/fmt/core.h:2722 #16 fmt::v9::detail::vformat_to<char>(fmt::v9::detail::buffer<char>&, fmt::v9::basic_string_view<char>, fmt::v9::basic_format_args<fmt::v9::basic_format_context<std::conditional<std::is_same<fmt::v9::type_identity<char>::type, char>::value, fmt::v9::appender, std::back_insert_iterator<fmt::v9::detail::buffer<fmt::v9::type_identity<char>::type> > >::type, fmt::v9::type_identity<char>::type> >, fmt::v9::detail::locale_ref) (buf=<optimized out>, fmt=..., args=..., loc=...) at /usr/src/debug/fmt-9.1.0-1.fc37.x86_64/include/fmt/format.h:4136 #17 0x00007fdc1cb8374f in fmt::v9::vformat[abi:cxx11](fmt::v9::basic_string_view<char>, fmt::v9::basic_format_args<fmt::v9::basic_format_context<fmt::v9::appender, char> >) (fmt=..., args=...) at /usr/src/debug/fmt-9.1.0-1.fc37.x86_64/include/fmt/core.h:1715 #18 0x0000556921822262 in libdnf::utils::sformat<>(std::basic_string_view<char, std::char_traits<char> >) (runtime_format_string=Python Exception <class 'gdb.error'>: value has been optimized out ) at /usr/include/c++/12/string_view:216 #19 libdnf::Logger::log<>(libdnf::Logger::Level, std::basic_string_view<char, std::char_traits<char> >) (this=this@entry=0x7ffd1edda0c0, level=level@entry=libdnf::Logger::Level::ERROR, format=Python Exception <class 'gdb.error'>: value has been optimized out ) at /usr/src/debug/dnf5-5.0.1-20221202005727.18.g73f53313.fc37.x86_64/include/libdnf/logger/logger.hpp:89 #20 0x00005569217be32c in libdnf::Logger::error<>(std::basic_string_view<char, std::char_traits<char> >) (format=Python Exception <class 'gdb.error'>: value has been optimized out , this=0x7ffd1edda0c0) at /usr/src/debug/dnf5-5.0.1-20221202005727.18.g73f53313.fc37.x86_64/include/libdnf/logger/logger.hpp:58 #21 main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/dnf5-5.0.1-20221202005727.18.g73f53313.fc37.x86_64/dnf5/main.cpp:720 Hello, this seems to be a PR related to this issue: https://github.com/rpm-software-management/dnf5/pull/196. Could you please try it again with the latest dnf5 nightly snapshot? I upgraded to dnf5-5.0.3-20230111005655.7.g0e93e6d3.fc38.x86_64 and the issue seems to be fixed. Thanks! Excuse me, but the latest build in Fedora 38 is dnf5-5.0.1-1.fc38. This bug should be kept open until until the fix appears in Fedora. *** Bug 2161026 has been marked as a duplicate of this bug. *** (In reply to Jan Kolarik from comment #6) > Hello, this seems to be a PR related to this issue: > https://github.com/rpm-software-management/dnf5/pull/196. Could you please > try it again with the latest dnf5 nightly snapshot? I would love to, can you please show us at the snapshot RPM repo? [root@fedorapine ~]# dnf5 upgrade https://kojipkgs.fedoraproject.org//packages/dnf5/5.0.4/2.fc38/aarch64/dnf5-5.0.4-2.fc38.aarch64.rpm https://kojipkgs.fedoraproject.org//packages/dnf5/5.0.4/2.fc38/aarch64/libdnf5-5.0.4-2.fc38.aarch64.rpm https://kojipkgs.fedoraproject.org//packages/dnf5/5.0.4/2.fc38/aarch64/libdnf5-cli-5.0.4-2.fc38.aarch64.rpm Updating and loading repositories: ... [3/3] Total 100% | 615.5 KiB/s | 1.2 MiB | 00m02s Problem: cannot install both libdnf5-5.0.0-2~pre.fc38.aarch64 and libdnf5-5.0.4-2.fc38.aarch64 - package dnf5-5.0.0-2~pre.fc38.aarch64 requires libdnf5(aarch-64) = 5.0.0-2~pre.fc38, but none of the providers can be installed - cannot install the best update candidate for package libdnf5-5.0.0-2~pre.fc38.aarch64 - problem with installed package Nothing to do. (In reply to customercare from comment #12) > Problem: cannot install both libdnf5-5.0.0-2~pre.fc38.aarch64 and > libdnf5-5.0.4-2.fc38.aarch64 Please report a new bug. This report is for a different bug (Assertion 'progress_bar != nullptr). the last comment was a level 8 bug, so scratch that. Unfortunately this happend after the update: [root@fedorapine ~]# dnf5 update Speicherzugriffsfehler (Speicherabzug geschrieben) clock_gettime(CLOCK_REALTIME, {tv_sec=1674137248, tv_nsec=904246653}) = 0
getpid() = 13927
openat(AT_FDCWD, "/usr/share/dnf5/libdnf.conf", O_RDONLY) = -1 ENOENT (Datei oder Verzeichnis nicht gefunden)
futex(0x7fb3bc0094, FUTEX_WAKE_PRIVATE, 2147483647) = 0
clock_gettime(CLOCK_REALTIME, {tv_sec=1674137248, tv_nsec=905465910}) = 0
getpid() = 13927
brk(0x5590f27000) = 0x5590f27000
newfstatat(AT_FDCWD, "/usr/lib64/dnf5/plugins/", {st_mode=S_IFDIR|0755, st_size=3488, ...}, 0) = 0
newfstatat(AT_FDCWD, "/usr/lib64/dnf5/plugins/", {st_mode=S_IFDIR|0755, st_size=3488, ...}, 0) = 0
openat(AT_FDCWD, "/usr/lib64/dnf5/plugins/", O_RDONLY|O_CLOEXEC|O_DIRECTORY) = 3
newfstatat(3, "", {st_mode=S_IFDIR|0755, st_size=3488, ...}, AT_EMPTY_PATH) = 0
fcntl(3, F_GETFL) = 0x24000 (flags O_RDONLY|O_LARGEFILE|O_DIRECTORY)
fcntl(3, F_SETFD, FD_CLOEXEC) = 0
getdents64(3, 0x5590f10670 /* 3 entries */, 32768) = 80
getdents64(3, 0x5590f10670 /* 0 entries */, 32768) = 0
close(3) = 0
openat(AT_FDCWD, "/usr/share/dnf5/aliases.d", O_RDONLY|O_CLOEXEC|O_DIRECTORY) = 3
newfstatat(3, "", {st_mode=S_IFDIR|0755, st_size=3488, ...}, AT_EMPTY_PATH) = 0
fcntl(3, F_GETFL) = 0x24000 (flags O_RDONLY|O_LARGEFILE|O_DIRECTORY)
fcntl(3, F_SETFD, FD_CLOEXEC) = 0
getdents64(3, 0x5590f10670 /* 3 entries */, 32768) = 88
getdents64(3, 0x5590f10670 /* 0 entries */, 32768) = 0
close(3) = 0
openat(AT_FDCWD, "/usr/share/dnf5/aliases.d/compatibility.conf", O_RDONLY) = 3
lseek(3, 0, SEEK_CUR) = 0
lseek(3, 0, SEEK_END) = 4410
lseek(3, 0, SEEK_CUR) = 4410
lseek(3, 0, SEEK_SET) = 0
read(3, "version = '1.0'\n\n###############"..., 8191) = 4410
close(3) = 0
openat(AT_FDCWD, "/etc/dnf/dnf5-aliases.d", O_RDONLY|O_CLOEXEC|O_DIRECTORY) = 3
newfstatat(3, "", {st_mode=S_IFDIR|0755, st_size=3488, ...}, AT_EMPTY_PATH) = 0
fcntl(3, F_GETFL) = 0x24000 (flags O_RDONLY|O_LARGEFILE|O_DIRECTORY)
fcntl(3, F_SETFD, FD_CLOEXEC) = 0
brk(0x5590f4d000) = 0x5590f4d000
getdents64(3, 0x5590f24d90 /* 3 entries */, 32768) = 80
getdents64(3, 0x5590f24d90 /* 0 entries */, 32768) = 0
brk(0x5590f45000) = 0x5590f45000
close(3) = 0
openat(AT_FDCWD, "/root/.config/dnf5/aliases.d", O_RDONLY|O_CLOEXEC|O_DIRECTORY) = -1 ENOENT (Datei oder Verzeichnis nicht gefunden)
--- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0xffffffffffffffe8} ---
+++ killed by SIGSEGV (core dumped) +++
(In reply to customercare from comment #14) > the last comment was a level 8 bug, so scratch that. > > Unfortunately this happend after the update: > > [root@fedorapine ~]# dnf5 update > Speicherzugriffsfehler (Speicherabzug geschrieben) As I said: For new bugs, please, open new bug reports <https://bugzilla.redhat.com/enter_bug.cgi?component=dnf5&product=Fedora&version=rawhide>. Do not clutter unrelated discussions. |