[Yum-devel] yum on an olpc machine (slooooooooooow)
seth vidal
skvidal at linux.duke.edu
Mon Dec 18 02:59:58 UTC 2006
On Sun, 2006-12-17 at 21:03 -0500, Jeremy Katz wrote:
> On Sun, 2006-12-17 at 17:28 -0500, Konstantin Ryabitsev wrote:
> > Instead of "diffing," I suggest that createrepo doesn't just throw
> > away old repo data, but uses the old db to record a list of repository
> > changes in changes.sqlite.bz2. The client can then download that file
> > and "rerun" the transactions against its copy of the main db to get
> > up-to-date.
>
> So, while this seems better than an actual diff for the sqlite case, it
> still doesn't solve what (at least to me) has been the fundamental
> question with doing diffs like this --
>
> When does it make sense to use a diff vs when does it make sense to grab
> the "full" file? And that was the problem that we used to have with the
> maintaining of metadata diffs with yup[1]
we have repomd.xml to help us with that.
we store the checksum of the old db (compressed and uncompressed) as
well as the new db file in repomd.xml
yum would download repomd.xml - if the checksum of its sqlite db files
is the same as the old checksum, then it downloads the sqlite
transaction diff b/c it can use it. when it doesn't match then grab the
whole file.
does that make sense to everyone?
-sv
More information about the Yum-devel
mailing list