[eoan regression] Clicking install button no longer works in update-manager

Bug #1843076 reported by Kiwinote on 2019-09-06
This bug affects 7 people
Affects Status Importance Assigned to Milestone
ubuntu-release-upgrader (Ubuntu)
Łukasz Zemczak
update-manager (Ubuntu)

Bug Description

It would appear that the latest version of ubuntu-release-upgrader (1:19.10.11) causes the install button in update-manager to no longer work.

steps to reproduce:
- launch 'update manager'
- updates are available
- click 'install now'
- nothing happens (ie crash with the below traceback)

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/UpdateManager/Dialogs.py", line 118, in <lambda>
    button.connect("clicked", lambda x: callback())
  File "/usr/lib/python3/dist-packages/UpdateManager/UpdatesAvailable.py", line 848, in on_button_install_clicked
  File "/usr/lib/python3/dist-packages/DistUpgrade/DistUpgradeCache.py", line 1161, in checkFreeSpace
    ("/var", self.quirks.extra_snap_space),
AttributeError: 'MyCache' object has no attribute 'quirks'

- update-manager 1:19.04.7
- ubuntu-release-upgrader 1:19.10.11

Confirmed by https://errors.ubuntu.com/problem/94df71a401d64c84828d7e85e15fc6c4b3555b99

Julian Andres Klode (juliank) wrote :

Sounds similar to bug 1843076, although that bug does not say anything about a crash. Not sure if related.

tags: added: rls-ee-incoming
Launchpad Janitor (janitor) wrote :

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

Changed in update-manager (Ubuntu):
status: New → Confirmed
Changed in ubuntu-release-upgrader (Ubuntu):
assignee: nobody → Łukasz Zemczak (sil2100)
Changed in ubuntu-release-upgrader (Ubuntu):
status: Confirmed → Triaged
Changed in update-manager (Ubuntu):
status: Confirmed → Triaged
Changed in ubuntu-release-upgrader (Ubuntu):
importance: Undecided → Critical
Changed in update-manager (Ubuntu):
importance: Undecided → Critical
Łukasz Zemczak (sil2100) wrote :

This is indeed an issue introduced by the latest u-r-u changes. It it not a bug in ubuntu-release-upgrader code per-se though, it's all because of how weirdly update-manager uses the u-r-u code. It's astonishing that update-manager creates a MyCache class that inherits from DistUpgradeCache.MyCache but actually *does not* call its constructor, instead only initializing what the base apt.Cache constructor would do. I'm pretty sure this is done for some purpose, but it does feel like bad design to me. It relies on people knowing that such a thing is happening and trusting that all of the DistUpgradeCache.MyCache code that we use in update-manager will only rely on members initialized by apt.Cache. It just feels *so* wrong.

Anyway, I will try working around this in u-r-u, since otherwise I would have to backport both update-manager and ubuntu-release-upgrader to disco (instead of just one package).

Changed in ubuntu-release-upgrader (Ubuntu):
status: Triaged → In Progress
Łukasz Zemczak (sil2100) wrote :

I am testing the fix right now - will push it out to eoan as soon as I confirm it is working.

Launchpad Janitor (janitor) wrote :

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

ubuntu-release-upgrader (1:19.10.12) eoan; urgency=medium

  * DistUpgrade/DistUpgradeCache.py: Make sure checkFreeSpace() still works for
    update-manager with its own implementation of MyCache. (LP: #1843076)

 -- Łukasz 'sil2100' Zemczak <email address hidden> Tue, 10 Sep 2019 18:44:43 +0200

Changed in ubuntu-release-upgrader (Ubuntu):
status: In Progress → Fix Released
Kiwinote (kiwinote) wrote :

I can confirm that having installed this update (obviously not via update-manager) that further updates can once again be installed via update-manager. Thanks Łukasz :)

Łukasz Zemczak (sil2100) wrote :

@kiwinote Phew, thanks for verifying! And sorry for introducing this regression in the first place - I did not expect update-manager to break due to these changes. But oh well, that's the nature of regressions!

Changed in update-manager (Ubuntu):
status: Triaged → Won't Fix
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers