Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Questions around /content #468

Open
luc14n0 opened this issue Jul 2, 2023 · 2 comments
Open

Questions around /content #468

luc14n0 opened this issue Jul 2, 2023 · 2 comments

Comments

@luc14n0
Copy link

luc14n0 commented Jul 2, 2023

Hi there folks,

I'm in sort of a quest to find out information about the /content file. More exactly, what generates it. I ask because a while ago, an openSUSE user reported the following error, in our openSUSE Support Matrix room:

Repository 'Main Repository (OSS)' is invalid.
[download.opensuse.org-oss|https://cache.opensuse.net.br/tumbleweed/repo/oss/] Valid metadata not found at specified URL
History:
 - [|] Error trying to read from 'https://cache.opensuse.net.br/tumbleweed/repo/oss/'
 - Download (curl) error for 'https://cache.opensuse.net.br/tumbleweed/repo/oss/content':
   Error code:  Unsupported protocol or redirect (location: http://downloadcontent-br.opensuse.org/tumbleweed/repo/oss/content)
   Error message: Redirect to protocol "http" not supported or disabled in libcurl

The error is not relevant, as seen in the ticket I opened. What's bugging me is the /content file that regional MirrorCache instances give 302 responses (pointing to downloadcontent.opensuse.org, which doesn't have it):

$ curl -IL http://mirrorcache-eu.opensuse.org/update/leap/15.4/oss/content
HTTP/1.1 302 Found
content-length: 0
date: Sun, 02 Jul 2023 02:34:18 GMT
location: http://downloadcontent.opensuse.org/update/leap/15.4/oss/content
strict-transport-security: max-age=15768000

HTTP/1.1 404 Not Found
Server: nginx
Date: Sun, 02 Jul 2023 02:34:19 GMT
Content-Type: text/html
Content-Length: 146
Connection: keep-alive
Vary: Accept-Encoding

But download.opensuse.org, doesn't have the file either:

$ curl -IL http://download.opensuse.org/update/leap/15.4/oss/content
HTTP/1.1 404 Not Found
Date: Sun, 02 Jul 2023 02:33:14 GMT
Server: Apache
Vary: accept-language,accept-charset
Accept-Ranges: bytes
Content-Type: text/html; charset=utf-8
Content-Language: en

Nor mirrors:

$ curl -IL http://ftp.gwdg.de/pub/opensuse/update/leap/15.4/oss/content
HTTP/1.1 404 Not Found
Server: nginx
Date: Sun, 02 Jul 2023 02:38:30 GMT
Content-Type: text/html
Content-Length: 239
Connection: keep-alive
ETag: "58299315-ef"

Grepping around this repo I see many mentions of this mysterious (to me) file. Can someone shed some light on this, please, do we need to get worried?

@mlandres
Copy link
Member

mlandres commented Jul 6, 2023

@luc14n0 this might be part of the repo type probing probing, although probing should find a valid repodata/repomd.xml before trying content.

Repositories of type rpm-md use URL/repodata/repomd.xml as master index file.
Repositories of type yast2 (AKA susetags) use URL/content as master index file.
(check the Type column inzypper lr --details)

Type susetags was used by SUSE in Code12, mainly for the Pool-repos. For Update-repos we mostly used rpm-md.
In Code15 also the Pool-repos were switched to rpm-md.

It would need a zypper.log to see exactly why /content was referred to.

@luc14n0
Copy link
Author

luc14n0 commented Jul 6, 2023

Ah, that's interesting. And makes sense.

Yesterday, during the major outage, I ran into an error where /content popped its head. Unfortunately, it was during a test - for something else - in a container that I already removed. But I remember it was during the metadata refresh, some repos got updated and then came the outage, right in the middle of it.

I'm going to see if I can't find the logs with someone who ran into this before.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants