[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[p2-dev] Improving download speed

One thing that I discovered when working on "Mirror ranking needs to be improved" [1] (I'd like some input on the patch) was that the actual meta-data is never downloaded from a mirror. I can understand why since the actual mirrorsURL is in the repository, but it got me thinking.

One increasingly common scenario is to use composites to include history. All references in these composites are relative. So why don't we allow a mirrorsURL in the composite? If we did, all the referenced meta-data could be fetched from the mirrors. That would mean a serious improvement for those of us that rely heavily on the mirrors.

Another thought is that perhaps we should have some kind manifest file? I think this has been discussed before but I was not able to find the bugzilla. The repository manager could make an attempt to load a specific file, p2.mf or similar, that would contain information about how to read the update site content. This manifest would typically be very small and contain information such as:

1. The format of the repositories (so that no scan is needed for compositeContent.jar, compositeContent.xml, content.jar, content.xml, etc.)
2. Name of the repositories (for quick browsing)
3. Location.
4. MirrorsURL.
5. (optional) Meta-requirements for reading the repository and a pointer to another repository that provides the needed artifacts. Done right, this could be the mechanism to use to ensure forward and backward compatibility.

With that in place, only a few hundred bytes would be needed before the mirror mechanism kicks in.


[1] https://bugs.eclipse.org/bugs/show_bug.cgi?id=297805