Contents of /xml/htdocs/proj/en/glep/glep-0061.html

Parent Directory Parent Directory | Revision Log Revision Log

Revision 1.2 - (show annotations) (download) (as text)
Wed Oct 22 18:03:40 2008 UTC (10 years ago) by robbat2
Branch: MAIN
Changes since 1.1: +2 -2 lines
File MIME type: text/html
Update HTML to match RST validation of tree-signing fixes.

1 <?xml version="1.0" encoding="utf-8" ?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5 <head>
6 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
7 <meta name="generator" content="Docutils 0.5: http://docutils.sourceforge.net/" />
8 <title>GLEP 61 -- Manifest2 compression</title>
9 <link rel="stylesheet" href="tools/glep.css" type="text/css" /></head>
10 <body bgcolor="white">
11 <table class="navigation" cellpadding="0" cellspacing="0"
12 width="100%" border="0">
13 <tr><td class="navicon" width="150" height="35">
14 <a href="http://www.gentoo.org/" title="Gentoo Linux Home Page">
15 <img src="http://www.gentoo.org/images/gentoo-new.gif" alt="[Gentoo]"
16 border="0" width="150" height="35" /></a></td>
17 <td class="textlinks" align="left">
18 [<b><a href="http://www.gentoo.org/">Gentoo Linux Home</a></b>]
19 [<b><a href="http://www.gentoo.org/proj/en/glep">GLEP Index</a></b>]
20 [<b><a href="http://www.gentoo.org/proj/en/glep/glep-0061.txt">GLEP Source</a></b>]
21 </td></tr></table>
22 <table class="rfc2822 docutils field-list" frame="void" rules="none">
23 <col class="field-name" />
24 <col class="field-body" />
25 <tbody valign="top">
26 <tr class="field"><th class="field-name">GLEP:</th><td class="field-body">61</td>
27 </tr>
28 <tr class="field"><th class="field-name">Title:</th><td class="field-body">Manifest2 compression</td>
29 </tr>
30 <tr class="field"><th class="field-name">Version:</th><td class="field-body">1.1</td>
31 </tr>
32 <tr class="field"><th class="field-name">Last-Modified:</th><td class="field-body"><a class="reference external" href="http://www.gentoo.org/cgi-bin/viewcvs.cgi/xml/htdocs/proj/en/glep/glep-0061.txt?cvsroot=gentoo">2008/10/21 23:30:47</a></td>
33 </tr>
34 <tr class="field"><th class="field-name">Author:</th><td class="field-body">Robin Hugh Johnson &lt;robbat2&#32;&#97;t&#32;gentoo.org&gt;</td>
35 </tr>
36 <tr class="field"><th class="field-name">Status:</th><td class="field-body">Draft</td>
37 </tr>
38 <tr class="field"><th class="field-name">Type:</th><td class="field-body">Standards Track</td>
39 </tr>
40 <tr class="field"><th class="field-name">Content-Type:</th><td class="field-body"><a class="reference external" href="glep-0002.html">text/x-rst</a></td>
41 </tr>
42 <tr class="field"><th class="field-name">Requires:</th><td class="field-body"><a class="reference external" href="http://www.gentoo.org/proj/en/glepglep-0044.html">44</a></td>
43 </tr>
44 <tr class="field"><th class="field-name">Created:</th><td class="field-body">July 2008</td>
45 </tr>
46 <tr class="field"><th class="field-name">Updates:</th><td class="field-body">44</td>
47 </tr>
48 </tbody>
49 </table>
50 <hr />
51 <div class="contents topic" id="contents">
52 <p class="topic-title first">Contents</p>
53 <ul class="simple">
54 <li><a class="reference internal" href="#abstract" id="id1">Abstract</a></li>
55 <li><a class="reference internal" href="#motivation" id="id2">Motivation</a></li>
56 <li><a class="reference internal" href="#specification" id="id3">Specification</a></li>
57 <li><a class="reference internal" href="#backwards-compatibility" id="id4">Backwards Compatibility</a></li>
58 <li><a class="reference internal" href="#references" id="id5">References</a></li>
59 <li><a class="reference internal" href="#copyright" id="id6">Copyright</a></li>
60 </ul>
61 </div>
62 <div class="section" id="abstract">
63 <h1><a class="toc-backref" href="#id1">Abstract</a></h1>
64 <p>Deals with compression of large Manifest2 files.</p>
65 </div>
66 <div class="section" id="motivation">
67 <h1><a class="toc-backref" href="#id2">Motivation</a></h1>
68 <p>With the introduction of MetaManifest, and full-tree Manifest coverage,
69 we are faced with the possibility of having very large Manifests.</p>
70 <p>Preliminary experiments with MetaManifest, show that with just the
71 existing per-package Manifests, the full MetaManifest, for a tree
72 including metadata/, exceeds 8MiB in size. Applying common compression
73 can achieve a 50-60% reduction in this size.</p>
74 </div>
75 <div class="section" id="specification">
76 <h1><a class="toc-backref" href="#id3">Specification</a></h1>
77 <p>When searching for a Manifest2 file, if the basename form does not
78 exist, the package manager should search in the same location using
79 common compressed suffixes, and use the compressed file in place of the
80 Manifest2.</p>
81 <p>gzip, bzip2, lzma should all be supported if available on the given
82 platform. In the case that multiple versions exist, the package manager
83 should simply pick one - they should be identical, differing only in
84 compression.</p>
85 <p>The Manifest generation process is required to ensure that inconsistent
86 compressed versions do not exist.</p>
87 </div>
88 <div class="section" id="backwards-compatibility">
89 <h1><a class="toc-backref" href="#id4">Backwards Compatibility</a></h1>
90 <p>The package Manifests should also be maintained as ONLY uncompressed in
91 CVS.</p>
92 <p>For processing of all existing per-package Manifests, if compression is
93 used, it should be done in parallel to the existing Manifests, to
94 provide for a changeover period. Newer versions of Portage may later
95 choose to exclude all non-compressed Manifests during emerge --sync if
96 compressed versions are guaranteed to exist on the servers.</p>
97 <p>MetaManifests may come into existence as compressed from the start, as
98 do not have an backwards compatibility issues.</p>
99 <p>As a side note, this breaks all manual interaction with Manifests
100 such as grep, and so should only be applied to large Manifest2 files,
101 such as the MetaManifest. 384KiB is suggested as a arbitary cut-off
102 point to start generating compressed Manifest2 files.</p>
103 </div>
104 <div class="section" id="references">
105 <h1><a class="toc-backref" href="#id5">References</a></h1>
106 <table class="docutils footnote" frame="void" id="glep44" rules="none">
107 <colgroup><col class="label" /><col /></colgroup>
108 <tbody valign="top">
109 <tr><td class="label">[1]</td><td>Mauch, M. (2005) GLEP44 - Manifest2 format.
110 <a class="reference external" href="http://www.gentoo.org/proj/en/glep/glep-0044.html">http://www.gentoo.org/proj/en/glep/glep-0044.html</a></td></tr>
111 </tbody>
112 </table>
113 </div>
114 <div class="section" id="copyright">
115 <h1><a class="toc-backref" href="#id6">Copyright</a></h1>
116 <p>Copyright (c) 2007 by Robin Hugh Johnson. This material may be
117 distributed only subject to the terms and conditions set forth in the
118 Open Publication License, v1.0.</p>
119 <p>vim: tw=72 ts=2 expandtab:</p>
120 </div>
122 </div>
123 <div class="footer">
124 <hr class="footer" />
125 <a class="reference external" href="glep-0061.txt">View document source</a>.
126 Generated on: 2008-10-22 18:02 UTC.
127 Generated by <a class="reference external" href="http://docutils.sourceforge.net/">Docutils</a> from <a class="reference external" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source.
129 </div>
130 </body>
131 </html>

  ViewVC Help
Powered by ViewVC 1.1.20