LowEndBox - Cheap VPS, Hosting and Dedicated Server Deals

Fedora Gives Up on DeltaRPMs

Delta RPMsLWN.net is reporting that the Fedora project has finally given up on the concept of DeltaRPMS.

Back in 2009, that project started working on a cool idea: instead of sending a full .rpm when someone does a yum update, why not just send the binary changes?  Then on the client side, the OS can reconstruct what it needs (original rpm + delta(s)) to make a valid updated rpm.

Cool!  For those who are bandwidth-constrained, this promised to improve their experience.

Alas, the technology didn’t work out.

First, the actual experience was somewhat subpar.  First, while the transfer is smaller, there’s still the initial latency and setup.  Yum has to analyze what you’ve got, what you need, send that to the server, wait for a response, and then start downloading.  If you were hoping to benefit because your network sucks, you still have pay part of the price because, well, your network sucks.

Also, while you only download a smaller amount of data from the Internet, you chew up more CPU and I/O reconstructing RPMs.  On smaller/weaker systems, this adds potentially more time than downloading the full RPM.

Quoting a couple Fedora honchos via LWN:

While occasionally I have seen a small decrease in the size of the files transferred (which certainly can benefit some people some of the time), the total elapsed time of the transaction has always ended up being higher as the recreation of the original rpm exceeds the time that it would have taken me to just download the full new rpm (with an admittedly reasonably high speed network provider in my environment).

But the main issue is that management of these DeltaRPMs by Fedora is non-trivial

The problem is that the DeltaRPMs are created but only getting synced to the mirrors as part of the update composed on the day the DeltaRPMs was created; the next day, a new distribution update gets composed, without using the previous DeltaRPMs, and that gets pushed to the mirrors. The net effect, as Jonathan Dieter pointed out in the bug report, is that the DeltaRPMs are only available for a day; “That means that the only way to take full advantage of deltarpms in Fedora is to update every single day.” Doing things that way “has very little end-user value“, [Fedora Lead Matthew] Miller said.

There are security concerns as well.

Saving precious bandwidth resources was more of a concern in 2009 than it is today.  Of course, there are still plenty of parts of the world that could do with better connectivity but it seems DeltaRPMs were solving a problem that no one is complaining about any more.


No Comments

    Leave a Reply

    Some notes on commenting on LowEndBox:

    • Do not use LowEndBox for support issues. Go to your hosting provider and issue a ticket there. Coming here saying "my VPS is down, what do I do?!" will only have your comments removed.
    • Akismet is used for spam detection. Some comments may be held temporarily for manual approval.
    • Use <pre>...</pre> to quote the output from your terminal/console, or consider using a pastebin service.

    Your email address will not be published. Required fields are marked *