Bugzilla – Bug 1190199
updating with zypp tech preview causes zypper to I/O trap due to a failed assertion
Last modified: 2021-11-24 02:32:45 UTC
This is a report regarding Mr. Zellers call for testers for the zypp tech preview on the Factory mailing list[0] on Tuesday. to update my system, I invoked ``` sudo env ZYPP_SINGLE_RPMTRANS=1 ZYPP_MEDIANETWORK=1 zypper dup ``` to both test the new single transaction rpm update as well as the new http backend, listed in the mailing-list post. However during the update, zypper crashed, because an assertion failed while downloading git-remote-tor-0.1.4-2.23.x86_64.rpm[1] from my repository[2]. ``` [...] Retrieving: scdoc-1.11.1-36.d_t.13.x86_64.rpm .......................................................................................[done] Retrieving package grpc-devel-1.39.1-107.d_t.4.x86_64 (29/189), 269.2 KiB ( 1.2 MiB unpacked) Retrieving: grpc-devel-1.39.1-107.d_t.4.x86_64.rpm ........................................................................[done (400 B/s)] Retrieving package git-remote-tor-0.1.4-2.23.x86_64 (30/189), 143.5 KiB (340.5 KiB unpacked) Retrieving: git-remote-tor-0.1.4-2.23.x86_64.rpm --------------------------------------------------------------------------------[starting] zypper: /home/abuild/rpmbuild/BUILD/libzypp-17.28.2/zypp-core/zyppng/base/signals.h:193: zyppng::Signal<R(T ...)>::~Signal() [with R = void; T = {}]: Assertion `this->impl()->exec_count_ == 0' failed. [1] 13043 IOT instruction sudo env ZYPP_SINGLE_RPMTRANS=1 ZYPP_MEDIANETWORK=1 zypper dup ``` this is the second time this happened to me with the new preview features and package within my repo on OBS (this first time was not even on this machine I'm running right now, but my laptop). After running the same command again, it managed to download git-remote-tor (and a few other packages from my repo), but failed while downloading system-group-plugdev (also part of that repo) with the same error. ``` [...] In cache scdoc-1.11.1-36.d_t.13.x86_64.rpm (28/189), 22.4 KiB ( 29.6 KiB unpacked) In cache grpc-devel-1.39.1-107.d_t.4.x86_64.rpm (29/189), 269.2 KiB ( 1.2 MiB unpacked) Retrieving package git-remote-tor-0.1.4-2.23.x86_64 (30/189), 143.5 KiB (340.5 KiB unpacked) Retrieving: git-remote-tor-0.1.4-2.23.x86_64.rpm ....................................................................................[done] Retrieving package joycond-v0.1.0+git.51~f9a6691-5.5.x86_64 (31/189), 61.1 KiB (140.7 KiB unpacked) Retrieving: joycond-v0.1.0+git.51~f9a6691-5.5.x86_64.rpm ..................................................................[done (406 B/s)] Retrieving package kitty-doc-0.23.1-1.12.x86_64 (32/189), 1.8 MiB ( 8.1 MiB unpacked) Retrieving: kitty-doc-0.23.1-1.12.x86_64.rpm ..............................................................................[done (394 B/s)] Retrieving package kitty-terminfo-0.23.1-1.12.noarch (33/189), 36.6 KiB ( 37.5 KiB unpacked) Retrieving: kitty-terminfo-0.23.1-1.12.noarch.rpm ...................................................................................[done] Retrieving package libclatexmath0-0.0.4-9.7.x86_64 (34/189), 964.2 KiB ( 3.2 MiB unpacked) Retrieving: libclatexmath0-0.0.4-9.7.x86_64.rpm ...........................................................................[done (397 B/s)] Retrieving package libextractor3-1.11-1.6.x86_64 (35/189), 31.5 KiB ( 70.8 KiB unpacked) Retrieving: libextractor3-1.11-1.6.x86_64.rpm .......................................................................................[done] Retrieving package librnnoise0-1611348273.1cbdbcf-1.9.x86_64 (36/189), 108.1 KiB (123.9 KiB unpacked) Retrieving: librnnoise0-1611348273.1cbdbcf-1.9.x86_64.rpm .................................................................[done (407 B/s)] Retrieving package multimc-0.6.12-1.5.x86_64 (37/189), 2.2 MiB ( 5.8 MiB unpacked) Retrieving: multimc-0.6.12-1.5.x86_64.rpm .............................................................................[done (304.0 KiB/s)] Retrieving package nautilus-open-any-terminal-0.2.12-1.7.noarch (38/189), 17.3 KiB ( 35.1 KiB unpacked) Retrieving: nautilus-open-any-terminal-0.2.12-1.7.noarch.rpm ........................................................................[done] Retrieving package obs-service-set_version-0.5.14-1.3.noarch (39/189), 14.6 KiB ( 18.3 KiB unpacked) Retrieving: obs-service-set_version-0.5.14-1.3.noarch.rpm .................................................................[done (407 B/s)] Retrieving package system-group-plugdev-3.1.0~0.dcdc92ab-5.12.x86_64 (40/189), 8.1 KiB ( 40 B unpacked) Retrieving: system-group-plugdev-3.1.0~0.dcdc92ab-5.12.x86_64.rpm ---------------------------------------------------------------[starting] zypper: /home/abuild/rpmbuild/BUILD/libzypp-17.28.2/zypp-core/zyppng/base/signals.h:193: zyppng::Signal<R(T ...)>::~Signal() [with R = void; T = {}]: Assertion `this->impl()->exec_count_ == 0' failed. [1] 26832 IOT instruction sudo env ZYPP_SINGLE_RPMTRANS=1 ZYPP_MEDIANETWORK=1 zypper dup ``` [0]: https://lists.opensuse.org/archives/list/factory@lists.opensuse.org/thread/YEFSZZY7FRGJPGPWKNCUT3UXQWVENOCL/ [1]: https://download.opensuse.org/repositories/home:/sp1rit/openSUSE_Tumbleweed/x86_64/git-remote-tor-0.1.4-2.23.x86_64.rpm [2]: https://build.opensuse.org/project/show/home:sp1rit
Created attachment 852308 [details] zypper log with libzypp failing ~~somehow the initial upload with this file failed~~
Thanks for the report, do you maybe have a coredump for the crash? Seems the backtrace was sadly not logged.
Also downloading and refreshing your repository works perfectly fine for me. So there might be something in your setup that triggers the bug.
> do you maybe have a coredump for the crash? this is my first time doing this, but I think it got one. This time it actually occurred with buildah-1.22.3-1.1.x86_64.rpm from the main opensuse repo, so it doesn't just happen with mine. I had to upload the dump somewhere else (a firefox send fork), because the dump is to big for Bugzilla. Is there a better option of uploading them? https://send.vis.ee/download/f0a4dfaaed6d7b56/#l2C45AviqAqi4oqW0NyqOQ
You got the correct coredump, but its a outdated version. The debuginfo is not available in the repositories anymore so I can not really see what is happening. In case you can still reproduce it with the up 2 date version of zypper/libzypp it would help a lot if you could upload a new coredump, since I still can not reproduce your problem locally.
Nevermind, I found the correct debuginfo. Seems I had locally the wrong version installed.
Proposed fix: https://github.com/openSUSE/libzypp/pull/344
Created attachment 852390 [details] zypper.log
Same crash here: Paket openSUSE-Addon-NonOss-release-20210906-1145.1.x86_64 abrufen (60/229), 8,1 KiB ( 2,1 KiB entpackt) Abrufen: openSUSE-Addon-NonOss-release-20210906-1145.1.x86_64.rpm -----------------------------------------------------------------------------------------------------------------[Starten]zypper: /home/abuild/rpmbuild/BUILD/libzypp-17.28.2/zypp-core/zyppng/base/signals.h:193: zyppng::Signal<R(T ...)>::~Signal() [with R = void; T = {}]: Assertion `this->impl()->exec_count_ == 0' failed. Aborted (Speicherabzug geschrieben)
The experimental method is much slower: Of a 10 MB rpm the first seconds the download uses the full bandwidth, but after about 80% of the file the download is falling down to some KiB per second!
I removed the ZYPP_MEDIANETWORK=1 and download was a lot faster. But installation crashed: Verifying ..........................................................................................................................................................................[fertig] Preparing ..........................................................................................................................................................................[fertig] Während oder nach der Installation/dem Entfernung von Paketen ist ein Problem aufgetreten: Executing the transaction failed because of the following problems: file /usr/include/libheif/bitstream.h from install of libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package heif-devel-headers-1.7.0-2.7.noarch file /usr/include/libheif/box.h from install of libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package heif-devel-headers-1.7.0-2.7.noarch file /usr/include/libheif/error.h from install of libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package heif-devel-headers-1.7.0-2.7.noarch file /usr/include/libheif/heif.h from install of libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package heif-devel-headers-1.7.0-2.7.noarch file /usr/include/libheif/heif_api_structs.h from install of libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package heif-devel-headers-1.7.0-2.7.noarch file /usr/include/libheif/heif_avif.h from install of libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package heif-devel-headers-1.7.0-2.7.noarch file /usr/include/libheif/heif_colorconversion.h from install of libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package heif-devel-headers-1.7.0-2.7.noarch file /usr/include/libheif/heif_context.h from install of libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package heif-devel-headers-1.7.0-2.7.noarch file /usr/include/libheif/heif_encoder_x265.h from install of libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package heif-devel-headers-1.7.0-2.7.noarch file /usr/include/libheif/heif_file.h from install of libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package heif-devel-headers-1.7.0-2.7.noarch file /usr/include/libheif/heif_hevc.h from install of libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package heif-devel-headers-1.7.0-2.7.noarch file /usr/include/libheif/heif_image.h from install of libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package heif-devel-headers-1.7.0-2.7.noarch file /usr/include/libheif/heif_limits.h from install of libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package heif-devel-headers-1.7.0-2.7.noarch file /usr/include/libheif/heif_plugin.h from install of libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package heif-devel-headers-1.7.0-2.7.noarch file /usr/include/libheif/heif_plugin_registry.h from install of libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package heif-devel-headers-1.7.0-2.7.noarch file /usr/include/libheif/heif_version.h from install of libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package heif-devel-headers-1.7.0-2.7.noarch file /usr/include/libheif/logging.h from install of libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package heif-devel-headers-1.7.0-2.7.noarch file /usr/share/tessdata/deu.traineddata from install of tesseract-ocr-traineddata-deu-4.1.0+git.20191030.6572757-20.5.noarch conflicts with file from package tesseract-ocr-traineddata-german-3.04.00-4.12.noarch In der Fehlermeldung oben finden Sie einen entsprechenden Hinweis.
(In reply to Keks Dose from comment #11) > I removed the ZYPP_MEDIANETWORK=1 and download was a lot faster. > > But installation crashed: > > Verifying > ............................................................................. > ............................................................................. > ................[fertig] > Preparing > ............................................................................. > ............................................................................. > ................[fertig] > Während oder nach der Installation/dem Entfernung von Paketen ist ein > Problem aufgetreten: > Executing the transaction failed because of the following problems: > file /usr/include/libheif/bitstream.h from install of > libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package > heif-devel-headers-1.7.0-2.7.noarch > file /usr/include/libheif/box.h from install of > libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package > heif-devel-headers-1.7.0-2.7.noarch > file /usr/include/libheif/error.h from install of > libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package > heif-devel-headers-1.7.0-2.7.noarch > file /usr/include/libheif/heif.h from install of > libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package > heif-devel-headers-1.7.0-2.7.noarch > file /usr/include/libheif/heif_api_structs.h from install of > libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package > heif-devel-headers-1.7.0-2.7.noarch > file /usr/include/libheif/heif_avif.h from install of > libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package > heif-devel-headers-1.7.0-2.7.noarch > file /usr/include/libheif/heif_colorconversion.h from install of > libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package > heif-devel-headers-1.7.0-2.7.noarch > file /usr/include/libheif/heif_context.h from install of > libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package > heif-devel-headers-1.7.0-2.7.noarch > file /usr/include/libheif/heif_encoder_x265.h from install of > libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package > heif-devel-headers-1.7.0-2.7.noarch > file /usr/include/libheif/heif_file.h from install of > libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package > heif-devel-headers-1.7.0-2.7.noarch > file /usr/include/libheif/heif_hevc.h from install of > libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package > heif-devel-headers-1.7.0-2.7.noarch > file /usr/include/libheif/heif_image.h from install of > libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package > heif-devel-headers-1.7.0-2.7.noarch > file /usr/include/libheif/heif_limits.h from install of > libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package > heif-devel-headers-1.7.0-2.7.noarch > file /usr/include/libheif/heif_plugin.h from install of > libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package > heif-devel-headers-1.7.0-2.7.noarch > file /usr/include/libheif/heif_plugin_registry.h from install of > libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package > heif-devel-headers-1.7.0-2.7.noarch > file /usr/include/libheif/heif_version.h from install of > libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package > heif-devel-headers-1.7.0-2.7.noarch > file /usr/include/libheif/logging.h from install of > libheif-devel-1.12.0-3.7.x86_64 conflicts with file from package > heif-devel-headers-1.7.0-2.7.noarch > file /usr/share/tessdata/deu.traineddata from install of > tesseract-ocr-traineddata-deu-4.1.0+git.20191030.6572757-20.5.noarch > conflicts with file from package > tesseract-ocr-traineddata-german-3.04.00-4.12.noarch > > > In der Fehlermeldung oben finden Sie einen entsprechenden Hinweis. The install here did not crash, you got file conflict errors. DOes the same transaction work without the ZYPP_SINGLE_RPMTRANS variable set? If yes this would be a seperate bug
(In reply to Keks Dose from comment #10) > The experimental method is much slower: Of a 10 MB rpm the first seconds the > download uses the full bandwidth, but after about 80% of the file the > download is falling down to some KiB per second! Also a seperate bug, but the speed reporting is not accurate atm, because we might prefetch other files that are not reported atm. You'd need to look at network interface level to see how much bandwidth its using. If you want to follow up on that you'd need to open a bug with the log attached.
(In reply to Benjamin Zeller from comment #12) > The install here did not crash, you got file conflict errors. DOes the same > transaction work without the ZYPP_SINGLE_RPMTRANS variable set? If yes this > would be a seperate bug I filed bug#1190337 for this.
(In reply to Benjamin Zeller from comment #12) > (In reply to Keks Dose from comment #11) > > I removed the ZYPP_MEDIANETWORK=1 and download was a lot faster. > > > > But installation crashed: ... > The install here did not crash, you got file conflict errors. DOes the same > transaction work without the ZYPP_SINGLE_RPMTRANS variable set? If yes this > would be a seperate bug I wasn't asked whether I'd accept the mentioned files to be overwritten, zypper simply aborted the process. Repeating it, it started to download all files again. So when aborting the process, it deleted the cache as well.
(In reply to Keks Dose from comment #15) > (In reply to Benjamin Zeller from comment #12) > > The install here did not crash, you got file conflict errors. DOes the same > > transaction work without the ZYPP_SINGLE_RPMTRANS variable set? If yes this > > would be a seperate bug > > I wasn't asked whether I'd accept the mentioned files to be overwritten, > zypper simply aborted the process. Repeating it, it started to download all > files again. So when aborting the process, it deleted the cache as well. Aborting is the expected behaviour, as mentioned in the tech preview mail: >Issues/Changes with ZYPP_SINGLE_RPMTRANS=1 zypper ... : > - Changes how file conflicts work, since they are now executed by librpm we are not able to generate a callback to ask the user if the error should be ignored. > In the presence of file conflicts, the transaction will report an error and will not execute unless --replacefiles is also used. As for the cleared cache, seems we need to improve the cache handling. I created bug#1190356 for this.
Should be fixed in libzypp >= 17.28.4
openSUSE-RU-2021:3501-1: An update that has 15 recommended fixes and contains two features can now be installed. Category: recommended (moderate) Bug References: 1186503,1186602,1187224,1187425,1187466,1187738,1187760,1188156,1188435,1189031,1190059,1190199,1190465,1190712,1190815 CVE References: JIRA References: ECO-2911,SLE-16862 Sources used: openSUSE Leap 15.3 (src): libsolv-0.7.20-9.2, libzypp-17.28.5-15.2, protobuf-3.9.2-4.9.1, zypper-1.14.49-16.1
SUSE-RU-2021:3501-1: An update that has 15 recommended fixes and contains two features can now be installed. Category: recommended (moderate) Bug References: 1186503,1186602,1187224,1187425,1187466,1187738,1187760,1188156,1188435,1189031,1190059,1190199,1190465,1190712,1190815 CVE References: JIRA References: ECO-2911,SLE-16862 Sources used: SUSE MicroOS 5.1 (src): libsolv-0.7.20-9.2, libzypp-17.28.5-15.2, protobuf-3.9.2-4.9.1, zypper-1.14.49-16.1 SUSE MicroOS 5.0 (src): libsolv-0.7.20-9.2, libzypp-17.28.5-15.2, protobuf-3.9.2-4.9.1, zypper-1.14.49-16.1 SUSE Linux Enterprise Module for SUSE Manager Server 4.2 (src): protobuf-3.9.2-4.9.1 SUSE Linux Enterprise Module for SUSE Manager Server 4.1 (src): protobuf-3.9.2-4.9.1 SUSE Linux Enterprise Module for Public Cloud 15-SP3 (src): protobuf-3.9.2-4.9.1 SUSE Linux Enterprise Module for Public Cloud 15-SP2 (src): protobuf-3.9.2-4.9.1 SUSE Linux Enterprise Module for Packagehub Subpackages 15-SP3 (src): protobuf-3.9.2-4.9.1 SUSE Linux Enterprise Module for Packagehub Subpackages 15-SP2 (src): protobuf-3.9.2-4.9.1 SUSE Linux Enterprise Module for Development Tools 15-SP3 (src): libsolv-0.7.20-9.2, protobuf-3.9.2-4.9.1 SUSE Linux Enterprise Module for Development Tools 15-SP2 (src): libsolv-0.7.20-9.2, protobuf-3.9.2-4.9.1 SUSE Linux Enterprise Module for Basesystem 15-SP3 (src): libsolv-0.7.20-9.2, libzypp-17.28.5-15.2, protobuf-3.9.2-4.9.1, zypper-1.14.49-16.1 SUSE Linux Enterprise Module for Basesystem 15-SP2 (src): libsolv-0.7.20-9.2, libzypp-17.28.5-15.2, protobuf-3.9.2-4.9.1, zypper-1.14.49-16.1 SUSE Linux Enterprise Installer 15-SP2 (src): libsolv-0.7.20-9.2, libzypp-17.28.5-15.2, protobuf-3.9.2-4.9.1 NOTE: This line indicates an update has been released for the listed product(s). At times this might be only a partial fix. If you have questions please reach out to maintenance coordination.
SUSE-RU-2021:3780-1: An update that has 31 recommended fixes and contains one feature can now be installed. Category: recommended (moderate) Bug References: 1153687,1182372,1183268,1183589,1184326,1184399,1184997,1185325,1186447,1186503,1186602,1187224,1187425,1187466,1187738,1187760,1188156,1188435,1189031,1190059,1190199,1190356,1190465,1190712,1190815,1191286,1191324,1191370,1191609,1192337,1192436 CVE References: JIRA References: SLE-18858 Sources used: SUSE Linux Enterprise Server for SAP 15 (src): libsolv-0.7.20-3.48.1, libzypp-17.28.8-3.78.1, zypper-1.14.50-3.60.1 SUSE Linux Enterprise Server 15-LTSS (src): libsolv-0.7.20-3.48.1, libzypp-17.28.8-3.78.1, zypper-1.14.50-3.60.1 SUSE Linux Enterprise Installer 15 (src): libsolv-0.7.20-3.48.1, libzypp-17.28.8-3.78.1, zypper-1.14.50-3.60.1 SUSE Linux Enterprise High Performance Computing 15-LTSS (src): libsolv-0.7.20-3.48.1, libzypp-17.28.8-3.78.1, zypper-1.14.50-3.60.1 SUSE Linux Enterprise High Performance Computing 15-ESPOS (src): libsolv-0.7.20-3.48.1, libzypp-17.28.8-3.78.1, zypper-1.14.50-3.60.1 NOTE: This line indicates an update has been released for the listed product(s). At times this might be only a partial fix. If you have questions please reach out to maintenance coordination.
SUSE-RU-2021:3781-1: An update that has 31 recommended fixes and contains one feature can now be installed. Category: recommended (moderate) Bug References: 1153687,1182372,1183268,1183589,1184326,1184399,1184997,1185325,1186447,1186503,1186602,1187224,1187425,1187466,1187738,1187760,1188156,1188435,1189031,1190059,1190199,1190356,1190465,1190712,1190815,1191286,1191324,1191370,1191609,1192337,1192436 CVE References: JIRA References: SLE-18858 Sources used: SUSE Linux Enterprise Server for SAP 15-SP1 (src): libsolv-0.7.20-4.3.1, libzypp-17.28.8-3.61.1, zypper-1.14.50-3.46.1 SUSE Linux Enterprise Server 15-SP1-LTSS (src): libsolv-0.7.20-4.3.1, libzypp-17.28.8-3.61.1, zypper-1.14.50-3.46.1 SUSE Linux Enterprise Server 15-SP1-BCL (src): libsolv-0.7.20-4.3.1, libzypp-17.28.8-3.61.1, zypper-1.14.50-3.46.1 SUSE Linux Enterprise Installer 15-SP1 (src): libsolv-0.7.20-4.3.1, libzypp-17.28.8-3.61.1 SUSE Linux Enterprise High Performance Computing 15-SP1-LTSS (src): libsolv-0.7.20-4.3.1, libzypp-17.28.8-3.61.1, zypper-1.14.50-3.46.1 SUSE Linux Enterprise High Performance Computing 15-SP1-ESPOS (src): libsolv-0.7.20-4.3.1, libzypp-17.28.8-3.61.1, zypper-1.14.50-3.46.1 SUSE Enterprise Storage 6 (src): libsolv-0.7.20-4.3.1, libzypp-17.28.8-3.61.1, zypper-1.14.50-3.46.1 SUSE CaaS Platform 4.0 (src): libsolv-0.7.20-4.3.1, libzypp-17.28.8-3.61.1, zypper-1.14.50-3.46.1 NOTE: This line indicates an update has been released for the listed product(s). At times this might be only a partial fix. If you have questions please reach out to maintenance coordination.