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

Parent Directory Parent Directory | Revision Log Revision Log

Revision 1.4 - (show annotations) (download) (as text)
Wed Jan 13 03:28:33 2010 UTC (7 years ago) by robbat2
Branch: MAIN
Changes since 1.3: +9 -9 lines
File MIME type: text/html
Resync HTML for treesigning gleps now that other cleanups and fixes are done.

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.6: 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.4</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">2010/01/13 03:26:53</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">Updated:</th><td class="field-body">October 2008, January 2010</td>
47 </tr>
48 <tr class="field"><th class="field-name">Updates:</th><td class="field-body">44</td>
49 </tr>
50 <tr class="field"><th class="field-name">Post-History:</th><td class="field-body">December 2009</td>
51 </tr>
52 </tbody>
53 </table>
54 <hr />
55 <div class="contents topic" id="contents">
56 <p class="topic-title first">Contents</p>
57 <ul class="simple">
58 <li><a class="reference internal" href="#abstract" id="id1">Abstract</a></li>
59 <li><a class="reference internal" href="#motivation" id="id2">Motivation</a></li>
60 <li><a class="reference internal" href="#specification" id="id3">Specification</a></li>
61 <li><a class="reference internal" href="#backwards-compatibility" id="id4">Backwards Compatibility</a></li>
62 <li><a class="reference internal" href="#references" id="id5">References</a></li>
63 <li><a class="reference internal" href="#copyright" id="id6">Copyright</a></li>
64 </ul>
65 </div>
66 <div class="section" id="abstract">
67 <h1><a class="toc-backref" href="#id1">Abstract</a></h1>
68 <p>Deals with compression of large Manifest2 files.</p>
69 </div>
70 <div class="section" id="motivation">
71 <h1><a class="toc-backref" href="#id2">Motivation</a></h1>
72 <p>With the introduction of MetaManifest, and full-tree Manifest coverage,
73 we are faced with the possibility of having very large Manifests.</p>
74 <p>Preliminary experiments with MetaManifest, show that with just the
75 existing per-package Manifests, the full MetaManifest, for a tree
76 including metadata/, exceeds 8MiB in size. Applying common compression
77 can achieve a 50-60% reduction in this size.</p>
78 </div>
79 <div class="section" id="specification">
80 <h1><a class="toc-backref" href="#id3">Specification</a></h1>
81 <p>When searching for a Manifest2 file, if the basename form does not
82 exist, the package manager should search in the same location using
83 common compressed suffixes, and use the compressed file in place of the
84 Manifest2.</p>
85 <p>gzip, bzip2, lzma, xz should all be supported if available on the given
86 platform. In the case that multiple versions exist, the package manager
87 should simply pick one - they should be identical, differing only in
88 compression.</p>
89 <p>The Manifest generation process is required to ensure that inconsistent
90 compressed versions do not exist.</p>
91 </div>
92 <div class="section" id="backwards-compatibility">
93 <h1><a class="toc-backref" href="#id4">Backwards Compatibility</a></h1>
94 <p>The package Manifests should also be maintained as ONLY uncompressed in
95 CVS.</p>
96 <p>For processing of all existing per-package Manifests, if compression is
97 used, it should be done in parallel to the existing Manifests, to
98 provide for a changeover period. Newer versions of Portage may later
99 choose to exclude all non-compressed Manifests during emerge --sync if
100 compressed versions are guaranteed to exist on the servers.</p>
101 <p>MetaManifests may come into existence as compressed from the start, as
102 do not have an backwards compatibility issues.</p>
103 <p>As a side note, this breaks all manual interaction with Manifests
104 such as grep, and so should only be applied to large Manifest2 files,
105 such as the MetaManifest. 384KiB is suggested as a arbitrary cut-off
106 point to start generating compressed Manifest2 files.</p>
107 </div>
108 <div class="section" id="references">
109 <h1><a class="toc-backref" href="#id5">References</a></h1>
110 <table class="docutils footnote" frame="void" id="glep44" rules="none">
111 <colgroup><col class="label" /><col /></colgroup>
112 <tbody valign="top">
113 <tr><td class="label">[1]</td><td>Mauch, M. (2005) GLEP44 - Manifest2 format.
114 <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>
115 </tbody>
116 </table>
117 </div>
118 <div class="section" id="copyright">
119 <h1><a class="toc-backref" href="#id6">Copyright</a></h1>
120 <p>Copyright (c) 2008-2010 by Robin Hugh Johnson. This material may be
121 distributed only subject to the terms and conditions set forth in the
122 Open Publication License, v1.0.</p>
123 <p>vim: tw=72 ts=2 expandtab:</p>
124 </div>
126 </div>
127 <div class="footer">
128 <hr class="footer" />
129 <a class="reference external" href="glep-0061.txt">View document source</a>.
130 Generated on: 2010-01-13 03:27 UTC.
131 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.
133 </div>
134 </body>
135 </html>

  ViewVC Help
Powered by ViewVC 1.1.20