Bug 1087166 - zypper refresh, file 'content' not found
zypper refresh, file 'content' not found
Status: RESOLVED INVALID
Classification: openSUSE
Product: openSUSE Tumbleweed
Classification: openSUSE
Component: Upgrade Problems
Current
x86-64 openSUSE Factory
: P5 - None : Major (vote)
: ---
Assigned To: E-mail List
Jiri Srain
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2018-03-27 20:44 UTC by James Carter
Modified: 2018-03-29 00:56 UTC (History)
1 user (show)

See Also:
Found By: ---
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments
Definition of failing repo (271 bytes, text/plain)
2018-03-27 20:44 UTC, James Carter
Details
Output from zypper install --no-recommends zypper (29.61 KB, text/plain)
2018-03-29 00:35 UTC, James Carter
Details
Output from zypper verify --no-recommends (61.40 KB, text/plain)
2018-03-29 00:37 UTC, James Carter
Details

Note You need to log in before you can comment on or make changes to this bug.
Description James Carter 2018-03-27 20:44:10 UTC
Created attachment 765167 [details]
Definition of failing repo

Versions: zypper-1.13.28-1.1.x86_64 ; openSUSE-release-20180318-1.2.x86_64
Date when problem was first seen: 2018-03-27 13:00 -0700 and nearby times.
I do: zypper refresh download.opensuse.org-oss
It maunders: File '/content' not found on medium 
'http://download.opensuse.org/tumbleweed/repo/oss/'

Which is not a lie: the content file now has a date extension,
content.20180326
Same thing in repo/non-oss.  
Chicken and egg problem: how is zypper supposed to know what date
is on the content file until after it has read and checked the signature
on the content file? 

So it is not possible to install anything from the Tumbleweed repos.
I didn't check what Leap is doing.  

I searched for existing bug reports with search terms
"zypper refresh content not found" but I was surprised to find no
prior reports of this problem, a full day later.
Comment 1 Dominique Leuenberger 2018-03-28 12:13:50 UTC
(In reply to James Carter from comment #0)
> Created attachment 765167 [details]
> Definition of failing repo
> 
> Versions: zypper-1.13.28-1.1.x86_64 ; openSUSE-release-20180318-1.2.x86_64
> Date when problem was first seen: 2018-03-27 13:00 -0700 and nearby times.
> I do: zypper refresh download.opensuse.org-oss
> It maunders: File '/content' not found on medium 
> 'http://download.opensuse.org/tumbleweed/repo/oss/'

How old is THAT TW installation? According the zypper version, this must be from mid last year; There have been various fixes in zypper in prepapration for the new repo layout; that zypper/libzypp update was published early August 2017 (so > 6 months ago)
 
> Which is not a lie: the content file now has a date extension,
> content.20180326

That is a backup file, not in use by the repo... 

> Same thing in repo/non-oss.  
> Chicken and egg problem: how is zypper supposed to know what date
> is on the content file until after it has read and checked the signature
> on the content file? 

No; that file is not in use at all; the 'issue' is that we switched the repo type from 'yast2/susetags' to rpm-md. Zypper 1.13.29, together with libzypp 16.14.0 would have handled that transparently for the user.

The easiest for you to recover from this situation is to remove the type= lines from the respetive .repo file in /etc/zypp/repos.d; without type= line, libzypp will probe for the correct type.
Comment 2 Dominique Leuenberger 2018-03-28 12:16:40 UTC
(In reply to James Carter from comment #0)
> Versions: zypper-1.13.28-1.1.x86_64 ; openSUSE-release-20180318-1.2.x86_64
> Date when problem was first seen: 2018-03-27 13:00 -0700 and nearby times.

Erm: are you running 20180318? Then I wonder even more why you have such an outdated zypper version. The current one is zypper-1.14.4-1.11
Comment 3 James Carter 2018-03-29 00:35:34 UTC
Created attachment 765330 [details]
Output from zypper install --no-recommends zypper
Comment 4 James Carter 2018-03-29 00:37:06 UTC
Created attachment 765331 [details]
Output from zypper verify --no-recommends
Comment 5 James Carter 2018-03-29 00:56:59 UTC
@Dominique, Sorry to be back version.  I also was wondering why I wasn't
getting updates for zypper and was getting so many complaints about
libyui7 and friends.  I took your advice and removed type=yast2 from
the definitions of the SuSE repos.  

I got zypper-1.14.4-1.1.x86_64 and libyui8-3.4.0-1.2.x86_64 onto the
machine.  I've attached output from the two attempts.  The key was to
let it toss libsmbldap0-4.6.5+git.27.6afd48b1083-1.1.x86_64 .  I have no
idea why that was important, but it was the package preventing all the
upgrades.  

I'm doing an enterprise mirror, and the local repos are in yast2 format.
Obviously I'm going to have to switch everything over to rpm-md.  
The first attempt failed because it searched on the SuSE repo using a
yast2 style path (for 7 packages).  For the second one I disabled all
the local repos, and succeeded in upgrading zypper.  

Slightly off topic: what's the best way to get it to prefer the local
repo if the versions are the same, but to prefer the SuSE repo if it has
a more recent version?  What I'm doing now is to set the local repo with
a numerically lower priority, so it is preferred whatever the version, 
but I have a godawful kludge to copy newer packages into the local repo,
restricting to only packages actually on my machines.  Much better is to
harvest downloaded files out of 
/var/cache/zypp/packages/download.opensuse.org-oss etc.