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

Bug#495954: slapd: Upgrade to Lenny failed: libldap_r-2.3.so.0 missing



Other comments:

> It seems that this may not always be possible, for instance when the old
> version of the upgraded package was not configured.

Yes, that's correct; if the old version of slapd had been deconfigured,
there is no guarantee from policy that its dependencies will remain
installed.  However, that is not what has happened in this case - something
has simply pulled the dependency out from underneath slapd while it was
still installed, and that's a bug.

If there were a case in which apt/aptitude deconfigured slapd, removed
libldap-2.3-0, and then upgraded slapd, then this problem would also be
triggered, and it would be a slapd bug; it would be a slapd bug that we have
no practical means of fixing, but it would be a slapd bug nonetheless.
However:

- that's not what's happened here
- no one has shown a case where this *does* happen
- we'd be in a gray area under policy, because an upgrade of a deconfigured
  package still results in "prerm upgrade" being called, so the prerm has no
  chance to distinguish this case from the case of a normal upgrade when all
  its deps are installed, so this would break lots of other cases that are
  policy-compliant
- in the case of slapd, there is no conceivable reason why this package
  *should* be deconfigured, and have its dependencies removed, prior to the
  upgrade because there are no conflicts that would require this.

As for the claim that this is an apt bug instead of an aptitude bug:

>   I think it pretty much confirms this: particularly the fact that
> aptitude believes that it's installing the required new package.  That
> means that at some point, the lower layers in apt are turning this into
> two dpkg runs, and breaking them up in a way that doesn't respect
> dependencies.

dpkg can never be called to do both removals and installs of packages in a
single invocation; the most it can do is --auto-deconfigure while
installing.  So this is not a case of apt "splitting" the commands wrong
when passing them to dpkg, it looks to me like apt is being asked to do the
wrong thing if it even has the *option* of ordering the package removal
before the upgrade.

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
slangasek@ubuntu.com                                     vorlon@debian.org



Reply to: