-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 On 17/01/14 11:27 AM, Michał Górny wrote: > Hello, all. > > I'm using squashfs to hold my Gentoo repositories on all of my > systems for some time. As you probably know, this allows me to save > space while keeping portage fast. However, it makes updating the > tree quite burdensome and time-consuming. > > We're already hosting daily gx86 tarballs on our mirrors, and > deltas made using diffball. Those can be used with Zac's > emerge-delta-webrsync to get daily updates done with minimal > network overhead. Sadly, it takes the whole process even more time > consuming :). > > Therefore, I'd like to suggest an alternative solution that could > help out Gentoo users that use squashfs for gx86 and would like to > be able to get daily updates fast and easy. > > The idea is to host -- along with the tarballs -- daily squashfs > images of gx86 in a chosen format. Additionally, the images would > come with deltas made using xdelta3 or a similar tool. Those deltas > -- with a slight download overhead -- would allow very fast > updates of the squashfs. > > Now some numbers. I did some tests 'converting' late gx86 daily > tarballs to squashfs. I've used squashfs 4.2 with LZO compression > since it's quite good and very fast. > > 96M portage-20140108.sqfs 96M portage-20140109.sqfs 96M > portage-20140110.sqfs 96M portage-20140111.sqfs 96M > portage-20140112.sqfs 96M portage-20140113.sqfs 97M > portage-20140114.sqfs 97M portage-20140115.sqfs > > For deltas, I've used xdelta3 with max compression (-9) and djw > secondary compression (it gave ~0.1M smaller files than fgk and > ~0.5M gain than with no secondary compression). > > 4,9M portage-20140108.sqfs-portage-20140109.sqfs.vcdiff.djw 6,3M > portage-20140109.sqfs-portage-20140110.sqfs.vcdiff.djw 5,6M > portage-20140110.sqfs-portage-20140111.sqfs.vcdiff.djw 8,9M > portage-20140111.sqfs-portage-20140112.sqfs.vcdiff.djw 6,3M > portage-20140112.sqfs-portage-20140113.sqfs.vcdiff.djw 7,8M > portage-20140113.sqfs-portage-20140114.sqfs.vcdiff.djw 8,5M > portage-20140114.sqfs-portage-20140115.sqfs.vcdiff.djw > > As you can see, the deltas are quite large compared to the actual > changes. However, we could have expected that since we're diffing a > compressed filesystem. What's important, however, is that applying > it takes ~2.5 second on my 2 GHz Athlon64. > > So, even with the extra download time, the update is much faster > than recreating the squashfs. And unlike some types of unionfs, it > doesn't come with extra runtime slowdown. > > What do you think? >
PLEASE DO! This sounds fantastic, and is something i've been considering proposing for some time. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (GNU/Linux) iF4EAREIAAYFAlLZWoMACgkQ2ugaI38ACPAb0gEAwFPWdtI5J8l9QH1YTrKe2Mbm OwPL4wGg9ORaHv0FkVcA/iLsP/z3uz3sJoWciR5ZCZ73HblyDgH/flAhakNhl3NZ =ool3 -----END PGP SIGNATURE-----