[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#773256: dbus + triggers + apt issue (was: Bug#773256: pre-approval: unblock: dpkg/1.17.23)



[ @deity: please check out the dbus issue below. ]

Hi!

On Sat, 2014-12-27 at 18:45:38 +0100, Niels Thykier wrote:
> I hope you are feeling better now. :)

Yes, much better, thanks. :)

> TL;DR: Please upload dpkg/1.17.23 with the proposed fix for #771730 at
> your earliest convenience - by the looks of it, might fix one or two of
> our upgrade tests on jenkins.d.n.

Thanks for the unblock.

[ Re dbus issue ]
> Noted.  Do we (still?) have a (reliable) way of reproducing the "dbus"
> trigger issue?

We didn't up to now (AFAIK), but there's now very valuable data from
Karl Ljungkvist at #774124. I've been able to reproduce the issue with
that status file and apt (over a clean debootstrap of jessie, and
adding i386 as a foreign arch). And have been trying out several things:

  * It seems to affect both apt from jessie/sid and wheezy. :(
    apt gets into a state it cannot recover from by itself.
  * «dpkg --configure --pending» solves the issue.
  * Using dpkg --force-configure-any only fixes the issue partially, :(
    because apt does not notice that the package has been implicitly
    configured, and tries to configure the package again and dpkg exits
    with an error for that run, which apt does not like much either (as
    I feared). So I'd need to also change dpkg to not fail configuring
    an already configure package, or try to detect that specific case.

This is the (trimmed) «dpkg -C» output for the broken status file:

,---
The following packages have been unpacked but not yet configured.
They must be configured using dpkg --configure or the configure
menu option in dselect for them to work:
 bluez                Bluetooth tools and daemons
 bzip2                high-quality block-sorting file compressor - utilities
 libdbus-1-3:amd64    simple interprocess messaging system (library)
 libdbus-1-3:i386     simple interprocess messaging system (library)
 libdbus-1-dev:amd64  simple interprocess messaging system (development headers
 libperl5.20          shared Perl library
 perl                 Larry Wall's Practical Extraction and Report Language
 perl-modules         Core Perl modules
 systemd-sysv         system and service manager - SysV links
 tzdata-java          time zone and daylight-saving time data for use by java r

The following packages are awaiting processing of triggers that they
have activated in other packages.  This processing can be requested using
dselect or dpkg --configure --pending (or dpkg --triggers-only):
 systemd              system and service manager

The following packages have been triggered, but the trigger processing
has not yet been done.  Trigger processing can be requested using
dselect or dpkg --configure --pending (or dpkg --triggers-only):
 dbus                 simple interprocess messaging system (daemon and utilitie
`---

And here's the «apt-get install -f -s» output:

,---
Reading package lists... Done
Building dependency tree
Reading state information... Done
Correcting dependencies... Done
The following extra packages will be installed:
  libpam-systemd
The following packages will be upgraded:
  libpam-systemd
1 upgraded, 0 newly installed, 0 to remove and 238 not upgraded.
10 not fully installed or removed.
Conf systemd-sysv (215-8 Debian:testing [amd64]) [libpam-systemd:amd64 ]
Inst libpam-systemd [215-7] (215-8 Debian:testing [amd64])
Conf libdbus-1-3 (1.8.12-3 Debian:testing [amd64])
Conf libdbus-1-3:i386 (1.8.12-3  [i386])
Conf bzip2 (1.0.6-7+b2 Debian:testing [amd64])
Conf perl-modules (5.20.1-4 Debian:testing [all])
Conf perl (5.20.1-4 Debian:testing [amd64])
Conf bluez (5.23-2 Debian:testing [amd64])
Conf libdbus-1-dev (1.8.12-3 Debian:testing [amd64])
Conf libperl5.20 (5.20.1-4 Debian:testing [amd64])
Conf tzdata-java (2014j-1 Debian:testing [all])
Conf libpam-systemd (215-8 Debian:testing [amd64])
`---

Trying to run the first action gives the undesired unsatisfied trigger
dependency problem:

,---
$ dpkg --configure systemd-sysv
dpkg: dependency problems prevent processing triggers for dbus:
 dbus depends on libdbus-1-3 (>= 1.7.6); however:
  Package libdbus-1-3:amd64 is not configured yet.

dpkg: error processing package dbus (--configure):
 dependency problems - leaving triggers unprocessed
[…]
dpkg: too many errors, stopping
Errors were encountered while processing:
 dbus
[…]
Processing was halted because there were too many errors.
`---

Before considering either reverting, or trying to find a workaround
for this in dpkg, I'd like to know if this is easily fixable in apt
and the implications of this problem (i.e. can it affect similar
situations regardless of the recent dpkg trigger changes?) and the
implications of such a fix.

Thanks,
Guillem


Reply to: