[CentOS] Why is yum not liked by some?

Les Mikesell lesmikesell at gmail.com
Fri Sep 9 18:56:18 UTC 2005


On Fri, 2005-09-09 at 13:18, Bryan J. Smith wrote:

> > I have, repeatedly.  If the RPMs in question are stored
> > with the payload unpacked, and binary deltas against each
> > file (similar to the CVS repository v file) stored, 
> 
> I don't think you're realizing what you're suggesting.
> Who is going to handle the load of the delta assembly?

I don't particularly want to promote the delta idea, but
if you keep in mind that the RPMS are already stored in
increasing version-numbered revs, if a binary delta
between each version were also available without changing
anything else, it would be trivial for a client to decide
whether it is more efficient to apply a delta to an
existing cached or locally available version or pull the
latest. It would take more storage, but wouldn't break
anything already working and could reduce network traffic
considerably.

> BTW/FYI:  I know how deltas work -- not only text, but the
> larger issue of delta'ing binary files.  And I have
> personally deployed XDelta as a binary delting application
> over the last 5 years, since CVS can only store binaries
> whole.  I haven't looked into how Subversion stores binaries
> (same algorithm as XDelta?).

Likewise, how does the style used in rdiff-backup compare?  It
claims to be similar to rsync which has proven very efficient in
being able to transmit the differences between two files.  With
rdiff the server side work only has to be done once.

> Not true!  Not true at all!  You're talking GBs of
> transactions _per_user_.

You really only need to create a delta once per RPM version
update creation.

> You're going to introduce:

Then you need to store the delta in addition to the full
versions, so there is more disk storage needed for
this approach.

> That's the key right there -- you think.
> 
> Again, keep in mind that repositories merely serve out files
> via HTTP today.

They could still do that.  The only overhead added would be
for the storage of the deltas and the traffic of the client
checking the sizes.  You would trade that off against the
network traffic saved when the client chooses the smaller
delta.  But, for this to work you need an on-line local
cache of the base rpms.  Yum saves one for a while for the
updates but I doubt if enough people would set up the local
cache of the base files to make this approach work unless
that step is automated during the OS install.

-- 
  Les Mikesell
    lesmikesell at gmail.com





More information about the CentOS mailing list