From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by sympa.inria.fr (Postfix) with ESMTPS id B105F82355 for ; Thu, 8 Feb 2018 09:02:00 +0100 (CET) Authentication-Results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=berenger@bioreg.kyushu-u.ac.jp; spf=None smtp.mailfrom=berenger@bioreg.kyushu-u.ac.jp; spf=None smtp.helo=postmaster@h4.hosting4.cc.kyushu-u.ac.jp Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of berenger@bioreg.kyushu-u.ac.jp) identity=pra; client-ip=133.5.13.5; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="berenger@bioreg.kyushu-u.ac.jp"; x-sender="berenger@bioreg.kyushu-u.ac.jp"; x-conformance=sidf_compatible Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of berenger@bioreg.kyushu-u.ac.jp) identity=mailfrom; client-ip=133.5.13.5; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="berenger@bioreg.kyushu-u.ac.jp"; x-sender="berenger@bioreg.kyushu-u.ac.jp"; x-conformance=sidf_compatible Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@h4.hosting4.cc.kyushu-u.ac.jp) identity=helo; client-ip=133.5.13.5; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="berenger@bioreg.kyushu-u.ac.jp"; x-sender="postmaster@h4.hosting4.cc.kyushu-u.ac.jp"; x-conformance=sidf_compatible IronPort-PHdr: =?us-ascii?q?9a23=3ArI+Qohd2p33H51rNiHJ1H8s4lGMj4u6mDksu8pMi?= =?us-ascii?q?zoh2WeGdxcS8Yx7h7PlgxGXEQZ/co6odzbaO6ua4ASQp2tWoiDg6aptCVhsI24?= =?us-ascii?q?09vjcLJ4q7M3D9N+PgdCcgHc5PBxdP9nC/NlVJSo6lPwWB6nK94iQPFRrhKAF7?= =?us-ascii?q?Ovr6GpLIj8Swyuu+54Dfbx9HiTahfL9+Ngm6oRnMvcQKnIVuLbo8xAHUqXVSYe?= =?us-ascii?q?RWwm1oJVOXnxni48q74YBu/SdNtf8/7sBMSar1cbg2QrxeFzQmLns65Nb3uhnZ?= =?us-ascii?q?TAuA/WUTX2MLmRdVGQfF7RX6XpDssivms+d2xSeXMdHqQb0yRD+v6bpgRh31hy?= =?us-ascii?q?cdLzM37X/ZisJwgqxYrhyuqRNwzIzIb4+aL/d+YqDQcMkGSWZdUMtcVSpMCZ68?= =?us-ascii?q?YYsVCOoBOP5VoYnnp1QUqxuxGQ6sBOL0yjRVm3L40rE03es5Hw/H0wIuA88FvX?= =?us-ascii?q?PPo9rrLqcdT+a1zKbWwjXZdP5Zwjb96I/Sch8/rvGAR7FwcMrMyUk0FwPFk0yc?= =?us-ascii?q?qZH/MzyPyusBqWqb7/J5WO+plmUppQZxoj21ycctjInEnp4VxUre9SVixoY6P8?= =?us-ascii?q?W4RFRnbt6jFZtcryeaNotrQs84XW5npTs6xqUBuZ+0ZiQF0ogoywTCa/yEdYWD?= =?us-ascii?q?/xHtVP6JLDtlin9odqizihao/US9xODwTMm53E5XoidLnNTArHAA2wbN5sSaSf?= =?us-ascii?q?Zx5Fqt1DmM2g3V9+pKO1o7lbDBJJ4k2rMwloQcsUDEHiLumEX7g7WadkUj+uiz?= =?us-ascii?q?9+TnY7PmppCTOoNulg7xLr4ims+/AOQlKQgOX3Wb9f2h1LH550L2XK9Gjv8ukq?= =?us-ascii?q?XBsZDaI9oUprKhDgNI3Isu5QyzAje83NgFk3QLNlJIdAqCj4fzOlHOJP74De24?= =?us-ascii?q?g1SpiDpk3O7JPqf/DZXLIXjMjq3hcK1m5E5dzwoz185Q551OBrECIPPzR1TxtN?= =?us-ascii?q?zFDhMgLgy42fzoB8ln2oMcQWKDGrWZP7/KsV+U+uIvJPGBa5MPtzb4L/gp/vru?= =?us-ascii?q?jX4imV8BZqSpxpsWaHWgHvt8OUmZYHzsgs0AEWgQpAY+Qvbq2xW+VmtYbnO2Gq?= =?us-ascii?q?Y9/S0TCYS8DI6FSJr+rqaG2XKVBJRQbWdHERimPE3FUaqpYb9YYi+IL8lunyYs?= =?us-ascii?q?X7mmUYIukxK/qRT61v96aOPfvC8A48GwnONp7vHewElhvQd/CN6QhjnUHjNE21?= =?us-ascii?q?gQTjpz55hR5El0y1ONy6992acKH91U/f5GFAQrKIXc0qlnTdn5HADZLI/QFASW?= =?us-ascii?q?B+6+CDR0deofhscUahwmSd+jiQrO0GypEqIOl6HOGdo9+eTexyqpfpsv+zP9zK?= =?us-ascii?q?AkymIebI5POGmh3fct91SVB4nSj0SfmPrsfq9a3z/Q72eeiHfItUoeUhYiCag?= =?us-ascii?q?=3D?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0DVBABkA3xamAUNBYVdFgQBAQEBAQIBA?= =?us-ascii?q?QEBCAEBAQGENwNtKINlixiPNZdtggMBCSWFFgKDBQYFNRMBAgEBAQEBAQEBARI?= =?us-ascii?q?BAQEBAQgLCwYoL4I4IoJJAQEBAgEBIw8BSwsLGAICJgICHzgTCAEBiikHEbAIg?= =?us-ascii?q?ieFAIJzHGmCCgwmgQ+DZoV9gXeBDoMvA4E4gQSCS4JFIAWIOgeLH5BLCR6IAI1?= =?us-ascii?q?egwWJM4gGjXuKEIE8N4FxgQU9gkYJgkwQDIIVaQGOBQEBAQ?= X-IPAS-Result: =?us-ascii?q?A0DVBABkA3xamAUNBYVdFgQBAQEBAQIBAQEBCAEBAQGENwN?= =?us-ascii?q?tKINlixiPNZdtggMBCSWFFgKDBQYFNRMBAgEBAQEBAQEBARIBAQEBAQgLCwYoL?= =?us-ascii?q?4I4IoJJAQEBAgEBIw8BSwsLGAICJgICHzgTCAEBiikHEbAIgieFAIJzHGmCCgw?= =?us-ascii?q?mgQ+DZoV9gXeBDoMvA4E4gQSCS4JFIAWIOgeLH5BLCR6IAI1egwWJM4gGjXuKE?= =?us-ascii?q?IE8N4FxgQU9gkYJgkwQDIIVaQGOBQEBAQ?= X-IronPort-AV: E=Sophos;i="5.46,477,1511823600"; d="scan'208";a="312564711" Received: from hosting4.cc.kyushu-u.ac.jp (HELO h4.hosting4.cc.kyushu-u.ac.jp) ([133.5.13.5]) by mail2-smtp-roc.national.inria.fr with ESMTP; 08 Feb 2018 09:01:58 +0100 Received: from [192.168.2.36] (unknown [133.5.218.148]) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: berenger@bioreg.kyushu-u.ac.jp) by h4.hosting4.cc.kyushu-u.ac.jp (hde-lc-postfix) with ESMTPSA id AED6E2B79AC for ; Thu, 8 Feb 2018 17:01:54 +0900 (JST) (envelope-from berenger@bioreg.kyushu-u.ac.jp) To: caml-list@inria.fr References: From: Francois BERENGER Message-ID: <8b5cd546-fca5-d78f-09a6-9140cf534a14@bioreg.kyushu-u.ac.jp> Date: Thu, 8 Feb 2018 17:01:54 +0900 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit Subject: Re: [Caml-list] File synchronization implementation(s) in OCaml? On 02/08/2018 12:05 PM, Evgeny Roubinchtein wrote: > Dear OCaml users and developers, > > Do you have advice on: > > 1. Practical file synchronization algorithms.  Rsync is the low bar for > my purposes here, i.e., I don't want anything that performs worse than > rsync in practice, but I am wondering if there is a way to do better.  > My completely uninformed attempt at searching the literature turned up > this paper: http://engineering.nyu.edu/~suel/papers/recon.pdf, but I > don't know anything about the area, so I am afraid that I don't even > know what I don't know about the subject :-).  I am also aware that > Unison has an implementation of an rsync-like algorithm, but I don't > know much more than that about that implementation. The algorithm behind the tarsnap service looks cool. I think it works even on binary files. https://www.tarsnap.com/ I think the exact algorithm is given in Colin Percival's thesis: https://ora.ox.ac.uk/objects/uuid:4f0d53cc-fb9f-4246-a835-3c8734eba735/datastreams/THESIS01 > 2. Existing implementation(s) of said algorithms in OCaml. > > Thank you in advance! > > -- > Best, > Evgeny ("Zhenya")