One immediate point of possible interest is that I've just implemented
efficient bi-directional file sync using a new protocol called zsync
(similar to rsync, but over http). The protocol is defined here -
http://zsync.moria.org.uk/ - but as documented is only server to client.
I've extended it to be bi-directional.
How did you do that? I wonder how this should be working as owncloud is webdav
only?
The zsync protocol is a http extension, so is easily added to webdav servers, as it has been with milton. In fact, because milton is just a library used my many server applications, zsync will become auto-magically available to a large number of servers as they upgrade.

How do you detect and solve conflicts?
How do you detect if a file has been removed?
Those are application level concerns, but zsync is simply a transport level protocol. We have a separate file sync engine (ie client side) which performs crc tracking and filesystem listening to provide the application intelligence. Currently proprietary, but should be open sourced soon. When combined with a GUI this is feature equivalent with dropbox.
How do you make sure there is no file corruption or loss of contect if an
error occurs (network loss, segfault)?
There is a full crc check done on the resulting file at the merge, same as for rsync.



_______________________________________________
Owncloud mailing list
[email protected]
https://mail.kde.org/mailman/listinfo/owncloud

Reply via email to