"the cache has no package" error when wine update is available

Bug #1597537 reported by Bill Scales on 2016-06-29
68
This bug affects 58 people
Affects Status Importance Assigned to Milestone
update-notifier (Ubuntu)
High
Brian Murray
Xenial
High
Brian Murray

Bug Description

[Test Case]
1) wget https://dl.winehq.org/wine-builds/Release.key
2) sudo apt-key add Release.key
3) sudo apt-add-repository 'https://dl.winehq.org/wine-builds/ubuntu/'
4) sudo apt-get update
5) sudo apt-get install wine-devel-i386=2.10.0~xenial
6) /usr/lib/update-notifier/apt-check -p
7) Observe the following crash:
E: Unknown Error: '<class 'KeyError'>' ("The cache has no package named 'wine-devel-i386'")

With the version of the package from proposed you'll be able to run apt-check -p with no Error being reported.

Original Description
--------------------
Release:

$ lsb_release -rd
Description: Ubuntu 16.04 LTS
Release: 16.04

Pacakge:
$ apt-cache policy update-notifier
update-notifier:
  Installed: 3.168
  Candidate: 3.168
  Version table:
 *** 3.168 500
        500 http://gb.archive.ubuntu.com/ubuntu xenial/main amd64 Packages
        100 /var/lib/dpkg/status

What should happen:

$/usr/lib/update-notifier$ /usr/lib/update-notifier/apt-check -p
wine-devel-amd64
wine-devel
google-chrome-stable
winehq-devel
wine-devel-i386

What actually happened:

$/usr/lib/update-notifier/apt-check -p
E: Unknown Error: '<class 'KeyError'>' ("The cache has no package named 'wine-devel-i386'")

Whats wrong:

apt_check.py line 143:

ignored = ul._is_ignored_phased_update(aptcache[pkg.name])

needs to use a full package name that includes the arch:

ignored = ul._is_ignored_phased_update(aptcache[pkg.get_fullname(False)])

There are many other reports of this problem - the suggested 'solution' in many cases is to run package manager/apt to install all the updates which then 'fixes' the problem until the next
update for wine becomes available.

https://bugs.launchpad.net/pipelight/+bug/1318321
http://askubuntu.com/questions/409243/update-notifier-doesnt-work-cache-issue
https://www.kubuntuforums.net/showthread.php?64504-Update-notifier-doesn-t-work-cache-issue
http://askubuntu.com/questions/581480/unknown-error-class-keyerror-the-cache-has-no-package-named-wine-stagin
http://askubuntu.com/questions/594888/how-can-i-resolve-repeated-package-dependency-error-involving-wine-staging-i38
http://ubuntuforums.org/showthread.php?t=2222677

Related branches

Steve Langasek (vorlon) wrote :

Thanks for this diagnosis! I've seen this error many times with cross-installed packages, but never had a chance to track the problem down.

Changed in update-notifier (Ubuntu):
assignee: nobody → Brian Murray (brian-murray)
importance: Undecided → High
status: New → Triaged
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package update-notifier - 3.170

---------------
update-notifier (3.170) yakkety; urgency=medium

  * data/apt_check.py: use pkg.get_fullname() instead of pkg.name so that
    architectures appear in package names, thanks to Bill Scales for the
    patch. (LP: #1597537)

 -- Brian Murray <email address hidden> Mon, 11 Jul 2016 15:05:27 -0700

Changed in update-notifier (Ubuntu):
status: Triaged → Fix Released
Guntis (guntis-e) wrote :

> This bug was fixed in the package update-notifier - 3.170

How can I install this package version? i tried

  sudo apt-get install --reinstall update-notifier

and it gave me version number lower than 3.170:

  Setting up update-notifier (3.168.2) ...

Brian Murray (brian-murray) wrote :

This is not yet fixed in Ubuntu 16.04, xenial.

Changed in update-notifier (Ubuntu Xenial):
status: New → Triaged
importance: Undecided → High
Erich E. Hoover (ehoover) wrote :

@brian-murray I'm really happy to see that there's finally a fix for this, is it targeted for a SRU?

description: updated
description: updated
Brian Murray (brian-murray) wrote :

Sorry for the delay, I just found this bug again in a lost Firefox tab. I've uploaded a fix to the unapproved SRU queue for Xenial and it is awaiting review by an SRU team member.

description: updated
Changed in update-notifier (Ubuntu Xenial):
assignee: nobody → Brian Murray (brian-murray)
status: Triaged → In Progress

Hello Bill, or anyone else affected,

Accepted update-notifier into xenial-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/update-notifier/3.168.5 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-xenial to verification-done-xenial. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-xenial. In either case, details of your testing will help us make a better decision.

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

Changed in update-notifier (Ubuntu Xenial):
status: In Progress → Fix Committed
tags: added: verification-needed verification-needed-xenial
Jean-Baptiste Lallement (jibel) wrote :

SRU verification for Xenial:
I have reproduced the problem with update-notifier 3.168.4 in xenial-updates and have verified that the version of update-notifier 3.168.5 in -proposed fixes the issue. I also verified that there is no regression with other packages than wine.

Marking as verification-done

tags: added: verification-done verification-done-xenial
removed: verification-needed verification-needed-xenial
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package update-notifier - 3.168.5

---------------
update-notifier (3.168.5) xenial; urgency=medium

  * data/apt_check.py: use pkg.get_fullname() instead of pkg.name so that
    architectures appear in package names, thanks to Bill Scales for the
    patch. (LP: #1597537)

 -- Brian Murray <email address hidden> Fri, 11 Aug 2017 12:06:17 -0700

Changed in update-notifier (Ubuntu Xenial):
status: Fix Committed → Fix Released

The verification of the Stable Release Update for update-notifier 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  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers