4 ms·
This is exactly how updates should be done. Usually, I'm not that big of a fan of things that Google does, but this is a great achievement. Hats off to those wh
by codabrink 15y ago
This is exactly how updates should be done. Usually, I'm not that big of a fan of things that Google does, but this is a great achievement. Hats off to those who contributed to this. I hope all update systems eventually work this way.
- LukeShu 15y agoWell, most binary updates do go through bsdiff, which was designed for exactly this. I'm surprised they were able to beat it by such a margin. Shit, the guy who made bsdiff did his doctoral thesis on the subject (actually, the algorithm used in bsdiff generates patches about 25% larger than the one in the thesis, but at huge performance increase (or, the thesis generates patches 20% smaller)).
- codabrink 15y agoReally, I wasn't aware that that many projects used bsdiff.
- drivebyacct2 15y agoYeah, me neither. What projects are we talking about here? I'm in Linux so I'm getting the full deb each time. I'm okay with that considering it's managed for me. I'll take that any day. Adobe? Apple? Those are the two vendors that I can imagine people having installed on most, if not all Windows computers. And I know for a fact they both distribute updates as full copies of their software waying in at a couple hundred to several hundred megabytes, requiring manual updates, pop up windows and restarts. I've yet to see anyone do updates as fast or seamlessly as Google.
- ilikejam 15y agoyum-presto on Fedora uses deltarpm, which uses bsdiff.
- mbrubeck 15y agoFirefox has long used bsdiff to distribute both security updates and major release updates: https://wiki.mozilla.org/Software_Update:MAR https://wiki.mozilla.org/Software_Update:MAR While Firefox updates in the past were not as quiet or seamless as Chrome updates, Mozilla is moving in that direction as part of the new "rapid release" process: https://wiki.mozilla.org/RapidRelease https://wiki.mozilla.org/RapidRelease
- cperciva 15y agoFirefox, FreeBSD, OS X, Courgette (it preprocesses binaries and then feeds them to bsdiff), Sophos, Mochi Media, the Amazon Kindle...
- akronim 15y agoI think Google could handle spending a bit of extra time on a single diff, in order to save 25% of their update bandwidth. Maybe they should just implement the thesis.
- cperciva 15y agoI'm surprised they were able to beat it by such a margin. Technology marches on. I have ideas for improving bsdiff, too.