Precise to Trusty - all of main - fails: Broken transition from libkadm5srv-mit8 to libkadm5srv-mit9
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
| krb5 (Ubuntu) |
High
|
Michael Vogt | ||
| Trusty |
High
|
Michael Vogt | ||
| ubuntu-release-upgrader (Ubuntu) |
High
|
Unassigned | ||
| Trusty |
High
|
Unassigned |
Bug Description
Precise to Trusty upgrade + all of main failure:
2014-04-08 12:58:48,335 DEBUG blacklist expr '^postgresql-
2014-04-08 12:58:48,335 DEBUG The package 'postgresql-
2014-04-08 12:58:48,357 ERROR Dist-upgrade failed: 'The package 'postgresql-
2014-04-08 12:58:48,358 DEBUG abort called
REPRODUCER:
* Start a precise schroot
* apt-get install krb5-multidev
* Switch apt sources to trusty
* apt-get update
* apt-get dist-upgrade → This will remove krb5-multidev instead of upgrading
Related branches
Jean-Baptiste Lallement (jibel) wrote : | #1 |
affects: | wayland (Ubuntu) → ubuntu-release-upgrader (Ubuntu) |
Jean-Baptiste Lallement (jibel) wrote : | #2 |
Jean-Baptiste Lallement (jibel) wrote : | #3 |
Martin Pitt (pitti) wrote : | #4 |
Jean-Baptiste Lallement (jibel) wrote : | #5 |
The broken path is :
Broken libkdb5-7:amd64 Breaks on libkadm5srv-mit8 [ amd64 ] < 1.10+dfsg~
Considering libkadm5srv-
Holding Back libkdb5-7:amd64 rather than change libkadm5srv-
...
Broken libkadm5srv-
Considering libkdb5-7:amd64 0 as a solution to libkadm5srv-
Holding Back libkadm5srv-
...
Broken krb5-multidev:amd64 Depends on libkadm5srv-mit9 [ amd64 ] < none -> 1.12+dfsg-2ubuntu2 > ( libs ) (= 1.12+dfsg-2ubuntu2)
Considering libkadm5srv-
Removing krb5-multidev:amd64 rather than change libkadm5srv-
...
Broken libpq-dev:amd64 Depends on krb5-multidev [ amd64 ] < 1.10+dfsg~
Considering krb5-multidev:amd64 8 as a solution to libpq-dev:amd64 7
Removing libpq-dev:amd64 rather than change krb5-multidev:amd64
...
Broken postgresql-
Considering libpq-dev:amd64 8 as a solution to postgresql-
Removing postgresql-
Martin Pitt (pitti) wrote : | #6 |
This log, taken from a manual dist-upgrade in a precise schroot with postgresql-
Investigating (0) libkdb5-7 [ amd64 ] < none -> 1.12+dfsg-2ubuntu2 > ( libs )
Broken libkdb5-7:amd64 Breaks on libkadm5srv-mit8 [ amd64 ] < 1.10+dfsg~
Considering libkadm5srv-
Holding Back libkdb5-7:amd64 rather than change libkadm5srv-
Investigating (1) libkadm5srv-mit9 [ amd64 ] < none -> 1.12+dfsg-2ubuntu2 > ( libs )
Broken libkadm5srv-
Considering libkdb5-7:amd64 0 as a solution to libkadm5srv-
Holding Back libkadm5srv-
Investigating (2) krb5-multidev [ amd64 ] < 1.10+dfsg~
Broken krb5-multidev:amd64 Depends on libkadm5srv-mit9 [ amd64 ] < none -> 1.12+dfsg-2ubuntu2 > ( libs ) (= 1.12+dfsg-2ubuntu2)
Considering libkadm5srv-
Removing krb5-multidev:amd64 rather than change libkadm5srv-
Investigating (2) libpq-dev [ amd64 ] < 9.1.13-
Broken libpq-dev:amd64 Depends on krb5-multidev [ amd64 ] < 1.10+dfsg~
Considering krb5-multidev:amd64 4 as a solution to libpq-dev:amd64 2
Removing libpq-dev:amd64 rather than change krb5-multidev:amd64
Investigating (2) libkrb5-dev [ amd64 ] < 1.10+dfsg~
Broken libkrb5-dev:amd64 Depends on krb5-multidev [ amd64 ] < 1.10+dfsg~
Considering krb5-multidev:amd64 4 as a solution to libkrb5-dev:amd64 -1
Removing libkrb5-dev:amd64 rather than change krb5-multidev:amd64
Investigating (2) postgresql-
Broken postgresql-
Considering libpq-dev:amd64 4 as a solution to postgresql-
Removing postgresql-
Done
The following packages will be REMOVED:
krb5-multidev libkrb5-dev libpq-dev postgresql-
summary: |
- Precise to Trusty - all of main - fails: The package 'postgresql-server- - dev-9.1' is marked for removal but it's in the removal blacklist + Precise to Trusty - all of main - fails: Broken transition from + libkadm5srv-mit8 to libkadm5srv-mit9 |
Martin Pitt (pitti) wrote : | #7 |
Marking as high as it breaks the upgrade. There are two options:
* -server-dev-9.1 isn't important to keep after upgrading, so we could adjust blacklist regexp to not cover -server-dev.
* We resolve the krb-dev transition bug that keeps it from updating (might turn out to be tricky). That aspect would have "low" priority.
Changed in ubuntu-release-upgrader (Ubuntu): | |
importance: | Undecided → High |
status: | New → Confirmed |
description: | updated |
Changed in krb5 (Ubuntu Trusty): | |
status: | New → Triaged |
importance: | Undecided → High |
Changed in ubuntu-release-upgrader (Ubuntu Trusty): | |
status: | Confirmed → Won't Fix |
Changed in krb5 (Ubuntu Trusty): | |
assignee: | nobody → Martin Pitt (pitti) |
milestone: | none → ubuntu-14.04 |
Martin Pitt (pitti) wrote : | #8 |
Trivial fix uploaded. I tested this with a local apt-ftparchive, and it succeeds now. libkadm5srv-mit8 is now correctly removed, and the rest upgraded.
Changed in krb5 (Ubuntu Trusty): | |
assignee: | Martin Pitt (pitti) → nobody |
status: | Triaged → Fix Committed |
Changed in ubuntu-release-upgrader (Ubuntu): | |
status: | Confirmed → Won't Fix |
Launchpad Janitor (janitor) wrote : | #9 |
This bug was fixed in the package krb5 - 1.12+dfsg-2ubuntu3
---------------
krb5 (1.12+dfsg-
* Add missing versioned Replaces: libkadm5srv-mit8 to the libkdb5-7 package.
Fixes upgrades from trusty. (LP: #1304403)
-- Martin Pitt <email address hidden> Tue, 08 Apr 2014 18:04:14 +0200
Changed in krb5 (Ubuntu Trusty): | |
status: | Fix Committed → Fix Released |
Sam Hartman (hartmans) wrote : Re: [Bug 1304403] Re: Precise to Trusty - all of main - fails: Broken transition from libkadm5srv-mit8 to libkadm5srv-mit9 | #10 |
Not criticising here, but asking.
At a level deeper than "it causes apt to work correctly," why is adding
replaces a reasonable fix?
Nothing in libkdb5-7 actually replases libkadm5-mit8
Martin Pitt (pitti) wrote : | #11 |
Hey Sam,
> At a level deeper than "it causes apt to work correctly," why is adding replaces a reasonable fix?
It indeed does not actually replace any files. This is purely to nudge apt into doing the upgrade to libkadm5srv-mit9, as otherwise the Breaks causes it to hold back half of the stack and remove krb5-multidev. So yes, the "missing Replaces" was perhaps misleading. We'll drop that change after trusty's release again, so it's only a temporary delta.
Do you see a better way to do that? This is the least intrusive and "not particularly wrong" change that I saw to fix this.
Changed in krb5 (Ubuntu Trusty): | |
assignee: | nobody → Martin Pitt (pitti) |
Jean-Baptiste Lallement (jibel) wrote : | #12 |
I'm reopening this report, it is still an issue with krb5 1.12+dfsg-2ubuntu3
Changed in krb5 (Ubuntu Trusty): | |
status: | Fix Released → Triaged |
Jean-Baptiste Lallement (jibel) wrote : | #13 |
New apt.log for P->T upgrade
See also bug 1304702 for an upgrade with the same failure from S to T
Changed in krb5 (Ubuntu Trusty): | |
assignee: | Martin Pitt (pitti) → Michael Vogt (mvo) |
status: | Triaged → In Progress |
Michael Vogt (mvo) wrote : | #14 |
I uploaded a workaround with a transitional package. I also looked into what went wrong in the resolver. Here is what happend:
- pkgDistUpgrade goes over the installed package and mark them all for upgrade
- pkg libkadm5srv-mit9 gets installed as a dependency of krb5-multidev and causes the removal of libkadm5srv-mit8
- pkgDistUpgrade arrives at libkadm5srv-mit8 and marks it for upgrade which causes a MarkKeep() because there is no upradable version
The last step is wrong in libapt, I will look into creating a testcase/fix for this.
Launchpad Janitor (janitor) wrote : | #15 |
This bug was fixed in the package krb5 - 1.12+dfsg-2ubuntu4
---------------
krb5 (1.12+dfsg-
* Add transitional libkadm5srv-mit8 package to help libapt
calculating the upgrade (LP: #1304403) to trusty.
This transitional package can be dropped once trusty is
released.
-- Michael Vogt <email address hidden> Wed, 09 Apr 2014 11:11:43 +0200
Changed in krb5 (Ubuntu Trusty): | |
status: | In Progress → Fix Released |
Michael Vogt (mvo) wrote : | #16 |
Fwiw, https:/
Sam Hartman (hartmans) wrote : | #17 |
>>>>> "Martin" == Martin Pitt <email address hidden> writes:
No complains at all.
I was just hoping to learn from you guys.
I actually probably want this delta for wheezy->jessie.
Michael Vogt (mvo) wrote : | #18 |
Hey Sam, thanks for your interest in this and for bringing the fix to debian. The git commit in #16 should have some good overview what goes wong in the libapt resolver. But for wheezy->jessie its probably still good to have the workaround.
It seems the bug still persists: Just upgraded to Trusty. GUI upgrade crashed...
This is my console output when trying aptitude safe-upgrade:
dpkg: error processing archive /var/cache/
libkadm5srv-
Errors were encountered while processing:
/var/cache/
E: Sub-process /usr/bin/dpkg returned an error code (1)
A package failed to install. Trying to recover:
dpkg: dependency problems prevent configuration of libkadm5srv-
libkdb5-7:amd64 (1.12+dfsg-
Version of libkadm5srv-
dpkg: error processing package libkadm5srv-
dependency problems - leaving unconfigured
Errors were encountered while processing:
libkadm5srv-
apt.log says:
Investigating (2) postgresql- server- dev-9.1 [ amd64 ] < 9.1.13- 0ubuntu0. 12.04 > ( libdevel ) server- dev-9.1: amd64 Depends on libpq-dev [ amd64 ] < 9.1.13- 0ubuntu0. 12.04 -> 9.3.4-1 > ( libdevel ) (>= 9.1~) server- dev-9.1: amd64 -1 server- dev-9.1: amd64 rather than change libpq-dev:amd64
Broken postgresql-
Considering libpq-dev:amd64 8 as a solution to postgresql-
Removing postgresql-
That doesn't tell me much yet, I'll try to reproduce in a schroot.