A more efficient up2date service using binary diffs

Joe Desbonnet jdesbonnet at gmail.com
Wed Mar 9 19:03:11 UTC 2005


Actually it was OpenOffice that got me started on this in the first place:

bsdiff of 
openoffice.org-i18n-1.1.2-10.i386.rpm (in the FC3/i386 distribution)
with
openoffice.org-i18n-1.1.2-11.5.fc3.i386.rpm in the updates.

The resulting diff file was 1MB (compared to 166MB for the RPM)! 

Two notes on this: 
1) the comparison was done on the cpio archive generated with rpm2cpio. 
2) bsdiff needs *lots* of memory to generate the diff (patching is not 
so resource intensive), so I had to split the cpio into 20MB chunks
and do the comparisons
on the chunks. If I was actually able to do the comparison on the
entire file I suspect that the resulting diff would have been
significantly smaller than 1MB!

So in conclusion: 1MB (or less) for diff vs 166MB for full RPM. 

I agree with Jeff: a stand alone system that can demonstrate the
benefits would be a good first step.

Joe.




On Wed, 09 Mar 2005 19:32:10 +0100, Kyrre Ness Sjobak
<kyrre at solution-forge.net> wrote:

> But a request to the original poster (or anybody interested): could you
> do a binary diff between two openoffice versions, and post how big they
> where, and how big the diff is? Pluss which versions, and how many steps
> (versions) between them?




More information about the fedora-devel-list mailing list