Re: discussion of createrepo and repodata format future
Panu Matilainen <[email protected]> Thu, 12 Aug 2010 12:48:26 +0300 (EEST)
| Newsgroups | gmane.linux.rpm.metadata |
|---|---|
| Message-ID | <[email protected]> |
On Fri, 6 Aug 2010, seth vidal wrote: > 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? /me wakes up from hibernation to dust 10cm layer of dust off my apt-rpm hat Because yum is the only depsolver that can use it directly. Everything else uses their other internal cache formats, requiring yet another conversion on the data. And for a one-time read-through + convert of data, sequential read of xml is/can be actually faster than random access reads from sqlite: On my laptop, apt-rpm with F13 default repositories, generating the internal cache from scratch takes ~35s with XML files. With the sqlite DB files, it takes ~46s. From what I read here, zypp and smart share similar experiences (whatever the exact numbers are I've no idea). In case of apt-rpm, sqlite /is/ a huge win over XML for the operations (eg file searches) where the data isn't stored in the internal cache but has to be looked up from the repository files. With XML those operations are simply pathological, similar to the smartpm case of 30min vs 30s vs 3s. If we're talking about redesigning repomd, it'd be a huge mistake to not at least attempt to address all the (now) known problems of the initial design + extensions it has grown over time, and one of them is: what's good for yum can hurt others, because they operate in a wildly different ways. And mind you, I'm not pointing any fingers as I'd be as guilty as anyone who's been around since the initial repomd spec discussions and either not seeing the issues coming or didn't speak up / submit code. - Panu -