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

Bug #1318321 reported by FM33 on 2014-05-11
234
This bug affects 53 people
Affects Status Importance Assigned to Milestone
Pipelight
Undecided
Unassigned
Wine "Compholio" Edition
Undecided
Unassigned
update notifier
Confirmed
Undecided
Unassigned
indicator-applet (Ubuntu)
Undecided
Unassigned
wine1.6 (Ubuntu)
Undecided
Unassigned

Bug Description

(Note: This also affects the regular Wine package, see below)

Hello,

On Ubuntu 14.04 x64, each time there is an update for wine-compholio available, but not installed yet, update-manager has the following error in system indicator :

class 'KeyError' The cache has no package named wine-compholio-i386

Installing the updates removes the error message.

I attach a screenshot of the whole message.

FM33 (foxxm) wrote :

Hi,

do I understand you correctly, that this problem occurs, but is resolved
again when you install the updates?

If yes, then it could just be related to the way the launchpad build server
works: We're building our wine package directly on the launchpad build
servers, so each time we push a new version there are two build-jobs for
each distribution: one for the 32-bit version of wine, and one for the
64-bit version. The problem is that even the 64-bit version of wine needs
the 32-bit base system to work properly, because a lot of
programs/installers/... are not yet available as 64-bit program, and we
have dependencies between these two different builds.

On launchpad there is no way to keep packages from publishing until all the
dependencies are also ready - and I think that this is exactly what you
noticed: The 64-bit version compiles a bit faster, and so the package
manager notices this problem, which is automatically resolved as soon as
the second build finishes a few minutes later.

One way you could work around this problem (although its not really
critical, and you can also just ignore it): Just install
wine-compholio:i386 instead of the wine-compholio:amd64 version, which has
no dependencies to other wine builds. To switch the version you can use:

sudo apt-get install wine-compholio:i386

We'll also think about some different methods to resolve this, but not sure
if there is any, because we have no influence on the underlying build
system.

Regards,
Sebastian

2014-05-11 13:12 GMT+02:00 FM33 <email address hidden>:

> Public bug reported:
>
> Hello,
>
> On Ubuntu 14.04 x64, each time there is an update for wine-compholio
> available, but not installed yet, update-manager has the following error
> in system indicator :
>
> class 'KeyError' The cache has no package named wine-compholio-i386
>
> Installing the updates removes the error message.
>
> I attach a screenshot of the whole message.
>
> ** Affects: pipelight
> Importance: Undecided
> Status: New
>
> ** Attachment added: "wine-compholio-update-error.png"
>
> https://bugs.launchpad.net/bugs/1318321/+attachment/4109773/+files/wine-compholio-update-error.png
>
> --
> You received this bug notification because you are subscribed to
> Pipelight.
> Matching subscriptions: pipelight
> https://bugs.launchpad.net/bugs/1318321
>
> Title:
> "the cache has no package" error when wine-compholio update is
> available
>
> Status in Pipelight:
> New
>
> Bug description:
> Hello,
>
> On Ubuntu 14.04 x64, each time there is an update for wine-compholio
> available, but not installed yet, update-manager has the following
> error in system indicator :
>
> class 'KeyError' The cache has no package named wine-compholio-i386
>
> Installing the updates removes the error message.
>
> I attach a screenshot of the whole message.
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/pipelight/+bug/1318321/+subscriptions
>

Hi,

this problems also seems to affect the regular wine version (see for example here: http://ubuntuforums.org/showthread.php?t=2222677 , http://askubuntu.com/questions/409243/update-notifier-doesnt-work-cache-issue ). The new 64 bit capable version of our wine-compholio package is based on the package used for the Wine development version in the Wine PPA. We most probably copied the stuff causing the issue, though the build scripts look perfectly valid. It seems like we are triggering a bug inside the update-notifier which is not triggered by other packages.

Michael

summary: - "the cache has no package" error when wine-compholio update is available
+ "the cache has no package" error when wine (-compholio) update is
+ available
description: updated

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

Changed in wine (Ubuntu):
status: New → Confirmed
Changed in wine-compholio:
status: New → Triaged
Bob-El (boblanctot) wrote :

For the record, I have the same problem and found that updating fixes it but it reoccurs frequently and is more an annoyance that anything else.

Scott Ritchie (scottritchie) wrote :

I think the problem stems from the fact that this is a 64 bit system and the update notifier is attempting to look for wine1.6-i386, which genuinely will not exist on a 64-bit system (only wine1.6-i386:i386 will -- there is no 64 bit version of this package, but it is depended on in a multiarch way).

Basically the indicator isn't being smart in a multiarch fashion here. But which package is the indicator in?

Erich E. Hoover (ehoover) wrote :

> Basically the indicator isn't being smart in a multiarch fashion here. But which package is the indicator in?

indicator-applet

Launchpad Janitor (janitor) wrote :

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

Changed in indicator-applet (Ubuntu):
status: New → Confirmed
summary: - "the cache has no package" error when wine (-compholio) update is
- available
+ "the cache has no package" error when wine update is available
affects: wine (Ubuntu) → wine1.6 (Ubuntu)
no longer affects: wine
QkiZ (qkiz) wrote :

14.10 here. Bug still exist. It says "The cache has no package named wine1.7-i386". But synaptic doesn't report any error.

Hartwig Kolbe (kolbeb) wrote :

My 14.04.2 64bit has the error message "The cache has no package named wine1.7-i386".

If this is caused by an available update for wine, how to resolve it? Manually install what? There is no indication that there is an update pending.

I tried "sudo apt-get install wine-compholio:i386" as recommended here earlier, but it results in "Unable to locate package wine-compholio".

Hartwig Kolbe (kolbeb) wrote :

But, "sudo apt-get upgrade" works for me. It installs updates for wine, and the error goes away.
Seems the updater does not like wine.

Alfred (alf-redyoung) wrote :

Now, it is 16.04, the problem is still there.

For update-notifier-common 3.168

I can see below error:

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

There is similar error like comment #1 too.

The workaround or possible fix is in "/usr/lib/update-notifier/apt-check"

change line 143 from
ignored = ul._is_ignored_phased_update(aptcache[pkg.name])
to
ignored = ul._is_ignored_phased_update(aptcache[pkg.name + ":" + cand_ver.arch])

Alfred (alf-redyoung) on 2016-07-23
Changed in update-notifier:
status: New → Confirmed
Anton Eliasson (eliasson) wrote :

I've tested alf-redyoung's change above against update-notifier 3.168.3 (Ubuntu 16.04) for a few days and it seems to fix the bug. Submitting it as a patch.

The attachment "fix_multiarch_check.patch" seems to be a patch. If it isn't, please remove the "patch" flag from the attachment, remove the "patch" tag, and if you are a member of the ~ubuntu-reviewers, unsubscribe the team.

[This is an automated message performed by a Launchpad user owned by ~brian-murray, for any issues please contact him.]

tags: added: patch
Erich E. Hoover (ehoover) wrote :

@eliasson Wow, if we could finally get this fixed then that would be really great. Most wine users have both the i386 and x86-64 package installed (since this is how we provide support for both 32-bit and 64-bit apps on the same system), so this problem affects a lot of users.

Anton Eliasson (eliasson) wrote :

@ehoover (and others), if you have the time and want to help the effort along, you could test the patch against the latest development release of update-notifier (compiled from bzr) and try to get it merged. Then it can be backported into the stable version in Ubuntu 16.04.

Changed in pipelight:
status: New → Invalid
Changed in wine-compholio:
status: Triaged → Invalid
Changed in indicator-applet (Ubuntu):
status: Confirmed → Invalid
Changed in wine1.6 (Ubuntu):
status: Confirmed → Invalid
Anton Eliasson (eliasson) wrote :

This is a bug in update-notifier only, so I'm marking it as invalid in all other projects. Please correct me if I'm wrong.

Erich E. Hoover (ehoover) wrote :

I tried to apply this on bzr HEAD and got error, going back through the log it looks like they have a fix for this now (not released for 16.04). It references another bug that appears to be a duplicate of this issue:
https://bugs.launchpad.net/ubuntu/+source/update-notifier/+bug/1597537

Anton Eliasson (eliasson) wrote :

Then it's fixed in upstream update-notifier and the maintainer is aware of the issue. Not much more we can do then I guess other than wait for a backport to Xenial. I'm marking this bug as a duplicate, since the other bug has received response from the maintainer (even though this bug is older).

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

Other bug subscribers