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

Update target platform for 2024-12 development cycle #882

Merged
merged 1 commit into from
Sep 12, 2024

Conversation

ptziegler
Copy link
Contributor

No description provided.

@ptziegler
Copy link
Contributor Author

ptziegler commented Sep 11, 2024

Great... some of the mirrors are not up-to-date :/
image

@merks
Copy link
Contributor

merks commented Sep 11, 2024

Note that I don't expect the p2 metadata from a mirror to be used at all, so if a mirror is missing the following, I'd expect it not to be used:

https://download.eclipse.org/releases/2024-09/202409111000/

But my comments are about what p2 does via it's own repository loading implementation. I think Tycho does quite a bit of its own processing such that my statement might not hold true. Perhaps @laeubi can comment...

@laeubi
Copy link
Contributor

laeubi commented Sep 12, 2024

It depends.... if a mirror is used as a P2 mirror, then only artifacts is relevant, if you configure it as a site mirror then metadata would be loaded (quite unlikely in this case).

So is there any particular problem we are facing here?

@ptziegler
Copy link
Contributor Author

So is there any particular problem we are facing here?

I don't think there is... Tycho itself is sending all requests to https://download.eclipse.org/releases/2024-09, but is then redirected to one of the mirror sites. The baseline check fails because some of the mirrors haven't been updated yet.

I've seen the same problem throughout previous releases and it usually took about a week before everything is synchronized again.

From my naive understanding, Tycho would have to check whether mirror is synchronized with the main repository and then request different mirrors until it gets one that's good. But this clearly falls outside Tycho's responsibility.

@ptziegler ptziegler merged commit d49dce7 into eclipse-windowbuilder:master Sep 12, 2024
6 of 8 checks passed
@ptziegler ptziegler deleted the simrel-2024-12 branch September 12, 2024 14:47
@merks
Copy link
Contributor

merks commented Sep 12, 2024

Here's how p2 works. It gets all the metadata from the URL you specify, It only knows to check for mirrors based on the information in that metadata. So in https://download.eclipse.org/releases/2024-09/202409111000/ the artifacts.jar contains this property:

<property name='p2.mirrorsURL' value='https://www.eclipse.org/downloads/download.php?format=xml&amp;file=/releases/2024-09/202409111000'/>

So it uses this URL to find mirror URLs:

https://www.eclipse.org/downloads/download.php?format=xml&amp;file=/releases/2024-09/202409111000

That returns this:

image

But that looks wrong to me because this doesn't exist:

https://mirrors.jevincanders.net/eclipse/releases/2024-09/202409111000

That looks like a bug in download.php which should never return a URL for which the requested file= value doesn't exist.

The p2 framework by itself uses only the first couple of URLs listed; the first 4 I think. Oomph's enhancements probes them all and use the fastest ones, so a couple broken ones are generally not a big problem for either.

A help desk issue would be useful.

@ptziegler
Copy link
Contributor Author

You're right. I've created https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/issues/5007

@ptziegler
Copy link
Contributor Author

But my comments are about what p2 does via it's own repository loading implementation. I think Tycho does quite a bit of its own processing such that my statement might not hold true.

If I understand the implementation correctly, then all of the artifact handling is delegated to p2 and Tycho simply reacts to the response. If p2 detects a bad mirror and returns a RETRY response, then Tycho treats this as a generic error and throws an exception.

I've created eclipse-tycho/tycho#4276 as a PoC, where I improved the handling of such a case.

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

Successfully merging this pull request may close these issues.

3 participants