Mailinglist Archive: opensuse-features (235 mails)

< Previous Next >
[New: openFATE 309167] lzma compression for primary.xml
  • From: fate_noreply@xxxxxxx
  • Date: Thu, 11 Mar 2010 12:16:31 +0100 (CET)
  • Message-id: <feature-309167-1@xxxxxxxxxxxxxx>
Feature added by: Michal Marek (michal-m)

Feature #309167, revision 1
Title: lzma compression for primary.xml

Buildservice: New
Requester: Mandatory

openSUSE-11.3: New
Requester: Mandatory

Requested by: Michal Marek (michal-m)

Providing all exported kernel symbols as individual dependencies (fate 305945)
resulted in a DoS against download.o.o, because the primary.xml.gz file in the
update repository grows with each kernel update (bnc 582907 and 586960). The
least intrusive fix to this seems to be: Sort the entries in primary.xml and
provide a lzma compressed version in addition to primary.xml.gz. Testing shows
that this brings the metadata growth back to the 11.1 symset approach (about
100k for each subsequent kernel update) and also reduces the size, so it would
be beneficial also for normal repositories. The repomd.xml format extension
could look like:

<data type="primary">
<location href="repodata/primary.xml.gz"/>
<checksum type="sha">1233456...</checksum>
<open-checksum type="sha">abcdef...</open-checksum>
<data type="primary-lzma">
<location href="repodata/primary.xml.lzma"/>
<checksum type="sha">56789a...</checksum>
<open-checksum type="sha">abcdef...</open-checksum>

With the meaning that if there is a primary.xml.lzma with the same
open-checksum, download this one instead of primary.xml.gz, decompress it with
lzma (in default install since 11.1) and then continue as usual. Old clients
would continue working with the primary.xml.gz file. The feature primarily
targets libzypp, but also extending yum should not be hard.

- Get rid of "symsets" in kernel package dependencies (feature/id: 305945)
- zsync support for update channel refresh (feature/id: 309088)
- fate #305945 causes extreme update channel metadata overhead
(novell/bugzilla/id: 586960)

openSUSE Feature:

< Previous Next >
List Navigation
This Thread