ubuntu-release-upgrader crashed with SystemError: E:Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.

Bug #1787649 reported by errors.ubuntu.com bug bridge
20
This bug affects 2 people
Affects Status Importance Assigned to Milestone
ubuntu-release-upgrader (Ubuntu)
Fix Released
High
Brian Murray
Bionic
Fix Released
High
Brian Murray

Bug Description

[Impact]
As documented in bug 1766890 some system were having failing to upgrade due to trigger issues with gnome-menus and ubuntu-release-upgrader was modified to upgrade libc6 first because that would fix that. However, in some rare cases this causes an issue for apt's problem resolver and the upgrade can't be calculated. Instead of leaving people on an unsupported we should try and upgrade them the way we used to - by not upgrading libc6 first.

[Test Case]
We actually haven't found a situation where upgrading libc6 first will create a issue for apt's problem resolver, but testing upgrades to ensure there are no regressions should be sufficient. Additionally, we can watch the bucket in the Ubuntu Error Tracker (referenced below) to ensure that the new version of ubuntu-release-upgrader doesn't appear there.

[Regression Potential]
A typo in the new code could cause a different Traceback, but it all looks good to me.

The Ubuntu Error Tracker has been receiving reports about a problem regarding ubuntu-release-upgrader. This problem was most recently seen with package version 1:18.04.24, the problem page at https://errors.ubuntu.com/problem/2295855a1a01cc3182184b45e474b7af0ea7f46b contains more details, including versions of packages affected, stacktrace or traceback, and individual crash reports.
If you do not have access to the Ubuntu Error Tracker and are a software developer, you can request it at http://forms.canonical.com/reports/.

Related branches

Revision history for this message
Brian Murray (brian-murray) wrote :

Here's the Traceback:

Traceback (most recent call last):
  File "/tmp/ubuntu-release-upgrader-_he31ans/bionic", line 8, in <module>
    sys.exit(main())
  File "/tmp/ubuntu-release-upgrader-_he31ans/DistUpgrade/DistUpgradeMain.py", line 238, in main
    if app.run():
  File "/tmp/ubuntu-release-upgrader-_he31ans/DistUpgrade/DistUpgradeController.py", line 2017, in run
    return self.fullUpgrade()
  File "/tmp/ubuntu-release-upgrader-_he31ans/DistUpgrade/DistUpgradeController.py", line 1958, in fullUpgrade
    self.cache["libc6"].mark_install()
  File "/usr/lib/python3/dist-packages/apt/package.py", line 1309, in mark_install
    fixer.resolve(True)
SystemError: E:Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.

Revision history for this message
Brian Murray (brian-murray) wrote :

The reports in the Ubuntu Error Tracker aren't particularly informative about what may be causing this, the only clues in them are Dependencies.txt and I didn't seen anything strange in there.

tags: added: id-5b7dae62a1e2ba612b4daf03
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in ubuntu-release-upgrader (Ubuntu):
status: New → Confirmed
Changed in ubuntu-release-upgrader (Ubuntu):
status: Confirmed → In Progress
importance: Undecided → High
assignee: nobody → Brian Murray (brian-murray)
Changed in ubuntu-release-upgrader (Ubuntu Bionic):
status: New → Triaged
importance: Undecided → High
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubuntu-release-upgrader - 1:18.10.10

---------------
ubuntu-release-upgrader (1:18.10.10) cosmic; urgency=medium

  [ Harald Sitter ]
  * DistUpgradeViewKDE.py:
    - exitMainLoop is now exitMainLoopMidFlight to make it clearer that
      it is run while the app is still running. it's a hack and not
      the actual exit point
    - inhibit kscreenlocker while the UI is up to prevent the lock screen
      from breaking during upgrades and then complain to the user

  [ Brian Murray ]
  * DistUpgradeQuirks.py: add a quirk which checks for an apt architecture
    of i386 and prevents the upgrade as the architecture may be dropped.
  * DistUpgradeController.py: If the attempt to only upgrade libc6 ends up
    creating an issue with apt's problem resolver try the full upgrade. This
    is what would have happened before the fix for bug 1766890. (LP: #1787649)

 -- Brian Murray <email address hidden> Fri, 31 Aug 2018 15:36:32 -0700

Changed in ubuntu-release-upgrader (Ubuntu):
status: In Progress → Fix Released
description: updated
Changed in ubuntu-release-upgrader (Ubuntu Bionic):
status: Triaged → In Progress
assignee: nobody → Brian Murray (brian-murray)
Revision history for this message
Łukasz Zemczak (sil2100) wrote : Please test proposed package

Hello errors.ubuntu.com, or anyone else affected,

Accepted ubuntu-release-upgrader into bionic-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/ubuntu-release-upgrader/1:18.04.26 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed.Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-bionic to verification-done-bionic. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-bionic. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in ubuntu-release-upgrader (Ubuntu Bionic):
status: In Progress → Fix Committed
tags: added: verification-needed verification-needed-bionic
Revision history for this message
Brian Murray (brian-murray) wrote :

I upgraded an Ubuntu 16.04 desktop system using release-upgrader version 18.04.26 to Ubuntu 18.04 without any issues today.

Revision history for this message
Brian Murray (brian-murray) wrote :

I also upgraded an Ubuntu 16.04 system with ubuntu-server installed using release-upgrader version 18.04.26 to Ubuntu 18.04 and there were no issues.

Revision history for this message
Brian Murray (brian-murray) wrote :

And I upgraded an Ubuntu 16.04 cloud image in lxc using release-upgrader version 18.04.26 to Ubuntu 18.04 and encountered no problems.

Revision history for this message
Brian Murray (brian-murray) wrote :

I went through crash reports in the Ubuntu Error Tracker today about ubuntu-release-upgrader and didn't see any about the new version of dist-upgrader with that looked like the Traceback this bug is supposed to fix so I'm setting it to v-done.

tags: added: verification-done verification-done-bionic
removed: verification-needed verification-needed-bionic
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubuntu-release-upgrader - 1:18.04.26

---------------
ubuntu-release-upgrader (1:18.04.26) bionic; urgency=medium

  * DistUpgradeController.py: If the attempt to only upgrade libc6 ends up
    creating an issue with apt's problem resolver try the full upgrade. This
    is what would have happened before the fix for bug 1766890. (LP: #1787649)

 -- Brian Murray <email address hidden> Wed, 05 Sep 2018 08:37:51 -0700

Changed in ubuntu-release-upgrader (Ubuntu Bionic):
status: Fix Committed → Fix Released
Revision history for this message
Steve Langasek (vorlon) wrote : Update Released

The verification of the Stable Release Update for ubuntu-release-upgrader has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.