Your message dated Sat, 14 Mar 2020 12:35:49 +0000
with message-id <[email protected]>
and subject line Bug#905772: fixed in libvirt 6.0.0-2
has caused the Debian Bug report #905772,
regarding virtlogd dependency loop causing upgrade failures
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
905772: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=905772
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: libvirt
Version: 4.6.0-1
Severity: normal

Hi,
I ran into this while testing libvirt 4.6 and opened initially just Ubuntu
bug [1].
But I found nothing Ubuntu-special so I recreated on Debian and realized
that you are affected as well.

I have no solution yet, but would be happy if we can sync on ideas and
implement the same eventually whatever we come up with.
But first let me outline the issue

TL;DR:
- virtlogd.service has since 4.2 a requires statement to both sockets
(virtlods.socket and virtlogd-admin.socket)
- before an upgrade usually virtlogd.socket and virtlogd.service are running
- on the upgrade virtlogd-admin.socket gets installed
Note: all those services/sockets run with no-restart-on-upgrade
- virtlogd should not be restarted, so it calls systemctl reload
- dh_systemd_enable: the two sockets files get enabled
- dh_systemd_start: will only call deb-systemd-invoke start on the sockets
ignoring errors
- /etc/init.d/virtlogd exists, so the postinst calls "invoke-rc.d virtlogd
start"

Remember that virtlogd is already running and working fine.
But that last step makes it realize that the new requires dependency to
virtlogd-admin.socket is not fulfilled and aborts the installation.

In a similar fashion /etc/init.d/libvirtd always gives an extra potentially
fatal "start" action.
Since the latter is not instaklled with no-restart dh_installinit will even
make this a restart call on upgrades.

As a POC I took away:
  $ mv  /etc/init.d/virtlogd /etc/init.d/virtlogd.nothere
But then realized we still start libvirtd through "invoke-rc.d libvirtd
$_dh_action" which due to this line in the init script:
  # Required-Start:    $network $local_fs $remote_fs $syslog virtlogd
will fail to start now.
Overall this is preferred by dh_systemd_start since both scripts are
installed.

I think it might be time to drop both sysV scripts as it seems that would
resolve all of it by eliminating the double calls.
But I need to test that without messing in a container, but a real package
build to be sure.

Details of such an upgrade - example is stable 3.0 -> testing 4.5

PRE
root@debian-stretch:~# systemctl status virtlogd.service virtlogd.socket
virtlogd-admin.socket virtlockd.service virtlockd.socket
virtlockd-admin.socket --no-pager --lines 2
● virtlogd.service - Virtual machine log manager
   Loaded: loaded (/lib/systemd/system/virtlogd.service; indirect; vendor
preset: enabled)
   Active: active (running) since Thu 2018-08-09 09:28:33 UTC; 7s ago
     Docs: man:virtlogd(8)
           http://libvirt.org
 Main PID: 7080 (virtlogd)
    Tasks: 2 (limit: 4915)
   CGroup: /system.slice/virtlogd.service
           └─7080 /usr/sbin/virtlogd

Aug 09 09:28:35 debian-stretch systemd[1]: virtlogd.service: Failed to
reset devices.list: Operation not permitted
Aug 09 09:28:37 debian-stretch systemd[1]: virtlogd.service: Failed to
reset devices.list: Operation not permitted

● virtlogd.socket - Virtual machine log manager socket
   Loaded: loaded (/lib/systemd/system/virtlogd.socket; enabled; vendor
preset: enabled)
   Active: active (running) since Thu 2018-08-09 09:28:33 UTC; 7s ago
   Listen: /var/run/libvirt/virtlogd-sock (Stream)

Aug 09 09:28:33 debian-stretch systemd[1]: Listening on Virtual machine log
manager socket.
Unit virtlogd-admin.socket could not be found.

● virtlockd.service - Virtual machine lock manager
   Loaded: loaded (/lib/systemd/system/virtlockd.service; indirect; vendor
preset: enabled)
   Active: inactive (dead)
     Docs: man:virtlockd(8)
           http://libvirt.org

● virtlockd.socket - Virtual machine lock manager socket
   Loaded: loaded (/lib/systemd/system/virtlockd.socket; enabled; vendor
preset: enabled)
   Active: active (listening) since Thu 2018-08-09 09:28:34 UTC; 7s ago
   Listen: /var/run/libvirt/virtlockd-sock (Stream)

Aug 09 09:28:34 debian-stretch systemd[1]: Listening on Virtual machine
lock manager socket.
Unit virtlockd-admin.socket could not be found.





Upgrade just libvirt and dependencies - stretch to testing.

# apt install libvirt-daemon-system
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer
required:
  libboost-iostreams1.62.0 libboost-random1.62.0 libboost-system1.62.0
libboost-thread1.62.0 librados2 librbd1
Use 'apt autoremove' to remove them.
The following additional packages will be installed:
  ca-certificates libcap-ng0 libcom-err2 libcomerr2 libcurl3-gnutls
libidn2-0 libnghttp2-14 libpsl5 librtmp1 libunistring2 libvirt-clients
  libvirt-daemon libvirt0 openssl publicsuffix
Suggested packages:
  libvirt-daemon-driver-storage-gluster libvirt-daemon-driver-storage-rbd
libvirt-daemon-driver-storage-sheepdog
  libvirt-daemon-driver-storage-zfs numad apparmor auditd nfs-common
open-iscsi pm-utils radvd systemtap zfsutils
The following NEW packages will be installed:
  ca-certificates libcom-err2 libcurl3-gnutls libidn2-0 libnghttp2-14
libpsl5 librtmp1 libunistring2 openssl publicsuffix
The following packages will be upgraded:
  libcap-ng0 libcomerr2 libvirt-clients libvirt-daemon
libvirt-daemon-system libvirt0
6 upgraded, 10 newly installed, 0 to remove and 248 not upgraded.
Need to get 9437 kB of archives.
After this operation, 5147 kB of additional disk space will be used.
Do you want to continue? [Y/n] Y
[...]
Setting up libvirt-daemon-system (4.5.0-1) ...
Installing new version of config file
/etc/apparmor.d/abstractions/libvirt-qemu ...
Installing new version of config file /etc/apparmor.d/libvirt/TEMPLATE.lxc
...
Installing new version of config file /etc/apparmor.d/libvirt/TEMPLATE.qemu
...
Installing new version of config file
/etc/apparmor.d/usr.lib.libvirt.virt-aa-helper ...
Installing new version of config file /etc/apparmor.d/usr.sbin.libvirtd ...
Installing new version of config file /etc/default/libvirt-guests ...
Installing new version of config file /etc/init.d/libvirt-guests ...
Installing new version of config file /etc/libvirt/libvirtd.conf ...
Installing new version of config file /etc/libvirt/libxl.conf ...
Installing new version of config file /etc/libvirt/qemu.conf ...
Installing new version of config file /etc/libvirt/virtlockd.conf ...
Installing new version of config file /etc/libvirt/virtlogd.conf ...
Installing new version of config file /etc/logrotate.d/libvirtd.libxl ...
Installing new version of config file /etc/logrotate.d/libvirtd.lxc ...
Installing new version of config file /etc/logrotate.d/libvirtd.qemu ...
Installing new version of config file /etc/logrotate.d/libvirtd.uml ...
Installing new version of config file /etc/sasl2/libvirt.conf ...
Created symlink
/etc/systemd/system/sockets.target.wants/virtlockd-admin.socket →
/lib/systemd/system/virtlockd-admin.socket.
Created symlink
/etc/systemd/system/sockets.target.wants/virtlogd-admin.socket →
/lib/systemd/system/virtlogd-admin.socket.
virtlockd.service is a disabled or a static unit, not starting it.
Job for virtlogd-admin.socket failed.
See "systemctl status virtlogd-admin.socket" and "journalctl -xe" for
details.
virtlogd-admin.socket couldn't start.
A dependency job for virtlogd.service failed. See 'journalctl -xe' for
details.
invoke-rc.d: initscript virtlogd, action "start" failed.
● virtlogd.service - Virtual machine log manager
   Loaded: loaded (/lib/systemd/system/virtlogd.service; indirect; vendor
preset: enabled)
   Active: active (running) since Thu 2018-08-09 09:35:36 UTC; 50s ago
     Docs: man:virtlogd(8)
           https://libvirt.org
 Main PID: 6774 (virtlogd)
   CGroup: /system.slice/virtlogd.service
           └─6774 /usr/sbin/virtlogd

Aug 09 09:35:38 debian-stretch systemd[1]: virtlogd.service: Failed to
reset devices.list: Operation not permitted
Aug 09 09:35:41 debian-stretch systemd[1]: virtlogd.service: Failed to
reset devices.list: Operation not permitted
Aug 09 09:36:21 debian-stretch systemd[1]: virtlogd.service: Failed to
reset devices.list: Operation not permitted
Aug 09 09:36:25 debian-stretch systemd[1]: virtlogd.service: Failed to
reset devices.list: Operation not permitted
Aug 09 09:36:25 debian-stretch systemd[1]: Reloading Virtual machine log
manager.
Aug 09 09:36:25 debian-stretch systemd[1]: Reloaded Virtual machine log
manager.
Aug 09 09:36:26 debian-stretch systemd[1]: virtlogd.service: Failed to
reset devices.list: Operation not permitted
Aug 09 09:36:26 debian-stretch systemd[1]: virtlogd.service: Failed to
reset devices.list: Operation not permitted
Aug 09 09:36:27 debian-stretch systemd[1]: Dependency failed for Virtual
machine log manager.
Aug 09 09:36:27 debian-stretch systemd[1]: virtlogd.service: Job
virtlogd.service/start failed with result 'dependency'.
dpkg: error processing package libvirt-daemon-system (--configure):
 subprocess installed post-installation script returned error exit status 1
Processing triggers for ca-certificates (20170717) ...
Updating certificates in /etc/ssl/certs...
0 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d...
done.
Processing triggers for libc-bin (2.24-11+deb9u3) ...
Processing triggers for systemd (232-25+deb9u4) ...
Errors were encountered while processing:
 libvirt-daemon-system
E: Sub-process /usr/bin/dpkg returned an error code (1)


Status after install:

# systemctl status virtlogd.service virtlogd.socket virtlogd-admin.socket
virtlockd.service virtlockd.socket virtlockd-admin.socket --no-pager
--lines 2
● virtlogd.service - Virtual machine log manager
   Loaded: loaded (/lib/systemd/system/virtlogd.service; indirect; vendor
preset: enabled)
   Active: active (running) since Thu 2018-08-09 09:35:36 UTC; 1min 11s ago
     Docs: man:virtlogd(8)
           https://libvirt.org
 Main PID: 6774 (virtlogd)
    Tasks: 2 (limit: 4915)
   CGroup: /system.slice/virtlogd.service
           └─6774 /usr/sbin/virtlogd

Aug 09 09:36:27 debian-stretch systemd[1]: virtlogd.service: Job
virtlogd.service/start failed with result 'dependency'.
Aug 09 09:36:31 debian-stretch systemd[1]: virtlogd.service: Failed to
reset devices.list: Operation not permitted

● virtlogd.socket - Virtual machine log manager socket
   Loaded: loaded (/lib/systemd/system/virtlogd.socket; enabled; vendor
preset: enabled)
   Active: active (running) since Thu 2018-08-09 09:35:36 UTC; 1min 11s ago
   Listen: /var/run/libvirt/virtlogd-sock (Stream)

Aug 09 09:35:36 debian-stretch systemd[1]: Listening on Virtual machine log
manager socket.

● virtlogd-admin.socket - Virtual machine log manager socket
   Loaded: loaded (/lib/systemd/system/virtlogd-admin.socket; enabled;
vendor preset: enabled)
   Active: inactive (dead)
   Listen: /var/run/libvirt/virtlogd-admin-sock (Stream)

Aug 09 09:36:27 debian-stretch systemd[1]: virtlogd-admin.socket: Socket
service virtlogd.service already active, refusing.
Aug 09 09:36:27 debian-stretch systemd[1]: Failed to listen on Virtual
machine log manager socket.

● virtlockd.service - Virtual machine lock manager
   Loaded: loaded (/lib/systemd/system/virtlockd.service; indirect; vendor
preset: enabled)
   Active: inactive (dead)
     Docs: man:virtlockd(8)
           https://libvirt.org

● virtlockd.socket - Virtual machine lock manager socket
   Loaded: loaded (/lib/systemd/system/virtlockd.socket; enabled; vendor
preset: enabled)
   Active: active (listening) since Thu 2018-08-09 09:36:26 UTC; 21s ago
   Listen: /var/run/libvirt/virtlockd-sock (Stream)

Aug 09 09:36:26 debian-stretch systemd[1]: Stopping Virtual machine lock
manager socket.
Aug 09 09:36:26 debian-stretch systemd[1]: Listening on Virtual machine
lock manager socket.

● virtlockd-admin.socket - Virtual machine lock manager admin socket
   Loaded: loaded (/lib/systemd/system/virtlockd-admin.socket; enabled;
vendor preset: enabled)
   Active: active (listening) since Thu 2018-08-09 09:36:26 UTC; 21s ago
   Listen: /var/run/libvirt/virtlockd-admin-sock (Stream)

Aug 09 09:36:26 debian-stretch systemd[1]: Listening on Virtual machine
lock manager admin socket.

[1]: https://bugs.launchpad.net/ubuntu/+source/libvirt/+bug/1786179

-- 
Christian Ehrhardt
Software Engineer, Ubuntu Server
Canonical Ltd

--- End Message ---
--- Begin Message ---
Source: libvirt
Source-Version: 6.0.0-2
Done: =?utf-8?q?Guido_G=C3=BCnther?= <[email protected]>

We believe that the bug you reported is fixed in the latest version of
libvirt, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Guido Günther <[email protected]> (supplier of updated libvirt package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Format: 1.8
Date: Sat, 14 Mar 2020 12:37:22 +0100
Source: libvirt
Architecture: source
Version: 6.0.0-2
Distribution: unstable
Urgency: medium
Maintainer: Debian Libvirt Maintainers 
<[email protected]>
Changed-By: Guido Günther <[email protected]>
Closes: 880970 887911 905772 939552 947006
Changes:
 libvirt (6.0.0-2) unstable; urgency=medium
 .
   * Upload to unstable
 .
 libvirt (6.0.0-1) experimental; urgency=medium
 .
   [ Guido Günther ]
   * [33890b9] New upstream version 6.0.0
     (Closes: #939552)
   * [c9f82be] gitlab-ci: Run autopkgtests
 .
   [ Christian Ehrhardt ]
   * [fa167bc] d/libnss-libvirt.lintian-overrides: accept having two nss so
     files
   * [bf48357] d/libvirt-daemon-system-sysv.lintian-overrides: not shipping
     systemd files.  Packages are split intentionally, ignore this lintian
     warning.
   * [2278598] d/rules: also check build time self test results on all
     architectures
   * [c1be36a] d/rules: drop doc binary cleanup.
   * [6d60c3c] d/rules: don't ship split daemons just yet
   * [33f8dc4] d/p/skip-qemuhotplugtest.patch: fix qemuhotplugtest.
     Skip some elements of qemuhotplugtest that for now break in
     Debian/Ubuntu build environments.
   * [a1734f7] d/rules: add libvirt-guests.default to libvirt-daemon-system
     instead of libvirt-daemon-system-sysv
   * [69f6cfe] d/rules: install /etc/default/* files that are shared between
     sysv and systemd packages
   * [31be682] d/rules: install virtlockd for sysv
     (Closes: #880970)
 .
   [ Andrea Bolognani ]
   * [070d158] Install virt-login-shell-helper.
     This new binary was introduced in libvirt 5.7.0 and is necessary for
     virt-login-shell to work.
   * [143dafb] Install augeas lenses for all drivers.
     These slipped through the cracks when we moved from picking up the
     corresponding directories as a whole to listing the specific files we're
     interested in.
   * [efa4cfe] Remove all mentions of Devhelp.
     As of libvirt 5.8.0, the corresponding files are no longer
     generated.
   * [8ebd427] not-installed: Remove obsolete entries.
     Now that upstream's build system has been fixed and we're picking up the
     documentation from the install location rather than the source directory,
     the corresponding files will no longer be flagged by dh_missing.
   * [ce54aef] not-installed: List all split daemons files.
     Since we're not shipping split daemons yet, the corresponding
     binaries as well as systemd units and augeas lenses will be
     flagged by dh_missing if we don't list them here.
   * [391e39d] symbols: Drop LIBVIRT_5.9.0
     libvirt 5.9.0 didn't introduce any new public symbols.
 .
 libvirt (6.0.0~rc1-1) experimental; urgency=medium
 .
   [ Guido Günther ]
   * [443fae0] New upstream version 6.0.0~rc1
   * [70c5676] Bump symbol versions
   * [eb6c6c1] gitlab-ci: Build package.
     We unfortunately can't use salsa-ci's prebuilt pipeline since
     that hangs on large jobs:
     https://salsa.debian.org/salsa/support/issues/180
     We redirct output to a file to work around:
     https://salsa.debian.org/salsa/support/issues/191
 .
   [ Christian Ehrhardt ]
   * [cc6b955] refresh d/p/* for v6.0.0
   * [5639ffb] d/control: bump build dep to python3
   * [dc99d35] d/rules: set enable-dependency-tracking to avoid FTBFS.
   * [af131c7] d/rules: drop the no more existing xen configure option
   * [84367d9] d/control: add python3-docutils as build dependency
   * [37f0a5c] d/libvirt-doc.doc: install rendered docs
   * [880f00e] d/libvirt-daemon-system.examples: Drop examples that are now
     conf files
   * [671aeca] d/libvirt-doc.doc-base.libvirt-doc: adapt doc base to new file
     placement
 .
 libvirt (5.6.0-4) experimental; urgency=medium
 .
   * [d88536d] Introduce libvirt-daemon-system-{systemd,sysv} Move init scripts
     to separate package that allows people to experiment with alternative init
     systems while avoiding the problems that mixed init scripts and systemd
     units have in the current packaging.
     Thanks to Christian Ehrhardt for all the input regarding upgrade
     problems seen in Ubuntu and possible solutions.
     (Closes: #887911, #905772)
   * [c19d230] autopkg tests: Use isolation-machine.
     This avoids running under debian ci since libvirt-lxc in lxc
     doesn't work there. (Closes: #947006)
Checksums-Sha1:
 cc27269d9e940bfaa776d5d8373a3b04a4cd765f 5104 libvirt_6.0.0-2.dsc
 9939a559e652d44b27e3404a26bcabe58988e4b4 8686092 libvirt_6.0.0.orig.tar.xz
 6955434964d4e425eeda115315356f85d2c15869 488 libvirt_6.0.0.orig.tar.xz.asc
 ae3290e7908e4b4802224a0cc0e53891810f38b1 73548 libvirt_6.0.0-2.debian.tar.xz
 556b34e1d6ac085ad77973fc55fc2367fc6057b5 12352 libvirt_6.0.0-2_source.buildinfo
Checksums-Sha256:
 17d432560794b63afcad55dab2c203067a19a76dee88dd9ec3bd26924835127e 5104 
libvirt_6.0.0-2.dsc
 e6bb642389bbace3252c462bbb2e9b1749dd64315b9873a424f36c7f8d357f76 8686092 
libvirt_6.0.0.orig.tar.xz
 3124495722a2134ef5ff391104282365164fb716f08ec78ec58e4e305e6b0ed6 488 
libvirt_6.0.0.orig.tar.xz.asc
 1ddec13378bd0debda9d4afc3997aad4211129dfe8818450f70a7d6d027bd0bb 73548 
libvirt_6.0.0-2.debian.tar.xz
 7d65faf969fa04a41e3d49d8358ba20ebc03674b4c8e3184f6a0ef992e6fa191 12352 
libvirt_6.0.0-2_source.buildinfo
Files:
 753122e9c8139fa1d4be00e7e41ae603 5104 libs optional libvirt_6.0.0-2.dsc
 b81417434e24266085c49a3f5af7721e 8686092 libs optional 
libvirt_6.0.0.orig.tar.xz
 66aa0447bdb40df341a41d57086d67c3 488 libs optional 
libvirt_6.0.0.orig.tar.xz.asc
 093159758c56b586a0362de808ee07e4 73548 libs optional 
libvirt_6.0.0-2.debian.tar.xz
 94c9148c4ada0f9d5b1d392622ab1fac 12352 libs optional 
libvirt_6.0.0-2_source.buildinfo

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEvHzQcjh1660F3xzZB7i3sOqYEgsFAl5syeoACgkQB7i3sOqY
EguOBw/5AfsUSH4D0O4L7gRynSN9fADjnDRV2aSaGJv6+CL/+ji3ekOhw2SgQIM3
ejPckjxKQ+ISscBN28eSiD8D3jZp7B5JizFBG/ikfwQFDNsd7m05LHlHbQ3Rip++
tORNPm93zEgk6Q3CqH095ESpl8EFCOOZ1tTS6BDDmQciJqa2qnPUh7f8vHCnztAy
aXdPYgqUYLRDYOs6+0ryIcpmty+kSF+lN9ui5iWLylMBvkp1Axh9B3MztPM4OfUo
I94ZngW5x5iIjt0Xldddrr9mP+3kBNKu6g1RcKy4k1JKVP8iaCGFl1qSJ2Mw4Y3j
nXbyk+Cd9prrgYpnjK1eoiOJhrVCTcGQvqvJrhQkZ8ezJB7Ww+/4gxaPf56IzfDG
c//8PiH+CjZ4rHIRdbflacRZBZBBsx3LsxeH0SROPTQnNOMTP65VAkn43R7fI0zl
ejKphu3UlAJl38QtYfXeyr2LLaBMmY1PyPyZLejLFgoiCWKlhsTyDU0PzBOpNJ0V
Q5fLV8O7C+HTDBua8eGsxQKCBjTmAB/KX3Nj2HT6MzBDWcCuDvYEL9VZ+gwIw8pj
mIuxYJPdFyl08wJHdJK7LZU16N1pcjUXRbtbBF/GTb8Sr1txiVNxpWtFO+BjSrZA
hJ9ZFzNF2GclI46698x+Ui+VmKE/LiF07KRP2DRmIWsjrw5XFbc=
=T/DD
-----END PGP SIGNATURE-----

--- End Message ---

Reply via email to