Bug 490486 - Improve repositories
Summary: Improve repositories
Status: NEW
Alias: None
Product: Orbit
Classification: Tools
Component: releng (show other bugs)
Version: unspecified   Edit
Hardware: PC Linux
: P3 enhancement (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact: Project Inbox CLA
URL:
Whiteboard:
Keywords:
Depends on: 485379 478337 489895
Blocks:
  Show dependency tree
 
Reported: 2016-03-26 13:13 EDT by David Williams CLA
Modified: 2019-02-07 11:38 EST (History)
6 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description David Williams CLA 2016-03-26 13:13:13 EDT
+++ This bug was initially created as a clone of Bug #478337 +++

In the course of bug 478337 several short-cuts were made to accomplish the goal. 

This bug is to track improving the procedure to use API, and use the most efficient "p2 form". In no particular order: 

- p2 API should be used to create the composites, add new "children" and remove "old" children. 

- all metadata xml files should be *.jar files. 

- xz compressed versions should be provided for all metadata files (at least, in the 'simple' repositories. Not sure it matters for the tiny composites.
Comment 1 David Williams CLA 2016-03-26 14:03:36 EDT
- The simple repositories should have "mirrorsurl" set.
Comment 2 Alexander Kurtakov CLA 2019-02-07 11:15:38 EST
Roland, Should this one be closed/fixed now?
Comment 3 Roland Grunberg CLA 2019-02-07 11:38:02 EST
I guess this bug could stay open.

We're not using p2 API to create the composites for the same reason many other projects don't. It's still seems a bit overkill to set up an Eclipse instance to create a file that essentially looks like this :

<?compositeMetadataRepository version='1.0.0'?>
<repository name="..." type="org.eclipse.equinox.internal.p2.metadata.repository.CompositeMetadataRepository" version="1.0.0">
<properties size="1">
  <property name="p2.timestamp" value="..."/>
</properties>
<children size="2">
  <child location="..."/>
  <child location="..."/>
</children>
</repository>

All metadata xml files are .jar files with the only exception being composite metadata repos. However I don't think these composites benefit from any significant size reduction (as is probably the motivation for shipping simple content xmls as jars). We also have xz compressed metadata files.

We don't currently generate mirrorsurl for simple repositories but can probably implement this.