[Sugar-devel] Problem using sugar-update-control to update large (100+ MB) activity bundles
dr at jones.dk
Tue Jun 16 05:34:23 EDT 2009
-----BEGIN PGP SIGNED MESSAGE-----
On Mon, Jun 15, 2009 at 10:47:57PM +0200, Bernie Innocenti wrote:
>On 06/15/09 16:37, Bryan Berry wrote:
>> I want to use rsync but I need a mechanism that the users (kids) can
>> initiate through a simple GUI, like the current Activity Update
>Rsync's unique capability to transmit only changed blocks within
>large files requires using the real rsync:// protocol. It won't
>work over dumb protocols such as http:// .
>This means you'd have to change both the client-side
>(sugar-update-control, fairly simple) and the server side
>(in our case Mozilla Addons, fairly complex).
>We could easily export the "files" directory of Mozilla Addons with
>rsync://, and the activity updater could use it when available.
>Exporting all the activities.sugarlabs.org data in an easily
>mirrorable format would also be a useful service for deployments
>that want to create a local mirrors.
>In fact, all our public data should also be made available in
>raw formats for easy mirroring.
I suspect that use of the rsync protocol alone does not solve the
challenge described by Bryan.
I have no experience with the using public unencrypted rsync: but when
wrapped in an ssh session, there is *no* benefit from the clever rsync
delta algorithm when comparing differently named files.
So you would need to somehow educate rsync about which files it should
treat as different versions of same object. And you should then be
_very_ certain that newest version also has the newest timestamps. If
e.g. the local XO has bogus timestamps, then those files might be seen
as newer and thus ignored.
Yes, it is possible to force always delta'ing all files, but then you
won't see the dramatic speed boost, as rsync then needs to generate
hashes of *all* files.
* Jonas Smedegaard - idealist og Internet-arkitekt
* Tlf.: +45 40843136 Website: http://dr.jones.dk/
[x] quote me freely [ ] ask before reusing [ ] keep private
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
-----END PGP SIGNATURE-----
More information about the Sugar-devel