[Rpm-metadata] discussion of createrepo and repodata format future

seth vidal skvidal at fedoraproject.org
Fri Aug 6 12:34:15 UTC 2010


On Fri, 2010-08-06 at 12:20 +0200, Duncan Mac-Vicar P. wrote:
> I was thinking about the sqlite part, and I think the change has to go 
> in a way that
> * assumes sqlite3 is _yum_ cache

why? Why not just a random-access md?

> * allows distros to use different cache strategies

That's true even now.

> 
> The sqlite types could go as extra data. Something like:
> 
> <data type="filelists">
> <checksum 
> type="sha256">1ef045e8c2a00901b1c3591990b2ec2498d2ed1807b315622a89aa73e6811778</checksum>
> <timestamp>1277771835</timestamp>
> <size>1098607</size>
> <open-size>15276280</open-size>
> <open-checksum 
> type="sha256">7a620afa9594e0f9be4048d1968881079174b6a4600617f55da8bd0f0ae4a4a6</open-checksum>
> <location href="repodata/filelists.xml.gz"/>
> <cache-location format="sqlite3" href="repodata/filelists.xml.sqldb"/>
> </data>

I don't have a problem with that necessarily except that it means that
every non-xml format is relegated to a 'cache', which I just don't think
is true.

When you think about it - the xml format is a cache, too. It's a
compilation, truncation and compression of the data in the rpm hdrs.

Something that we've kicked about is mix-and-match metadata fileformats
based on what makes accessing them most functional. I know opensuse
doesn't have to muck with filedeps in pkgs but do you resolve them for
when a user knows the filename they need but not the pkg name?

the equivalent of: yum install /usr/bin/myprogram

If so - the discussion of breaking of the filelists into chunks based on
subdirs might be beneficial to you.

> Another problem that shows up is that caches may be different. For 
> example, yum has one file per metadata. We have just one solv file per 
> repository. But I guess that is just another tag under repomd tag. 
> Specifying the location, and the format, so that the downloader can 
> choose whether to use it or not.
> 
> Also, what is the status of these tags?
> 
> <revision>1277771829</revision>
> <tags>
> <repo>obsrepository://build.opensuse.org/openSUSE:11.2:Contrib/standard</repo>
> </tags>

They shouldn't need to change at all.

In fact my original thoughts were that repomd.xml doesn't need to
change, except to add an attribute of 'compression type' to each
datatype.


-sv




More information about the Rpm-metadata mailing list