Using the transformational approach to build a safe and generic data synchronizer

Reconciliating divergent data is an important issue in concurrent engineering, mobile computing and software configuration management. Currently, a lot of synchronizers or merge tools perform reconciliations. However, they do not define what is the correctness of their synchronisation. In this paper, we propose to use a transformational approach as the basic model for reasonning about synchronisation. We propose an algorithm and specific transformation functions that realize a file system synchronisation. Unlike classic synchronizers, our synchronizer ensures properties of convergence, causality and intention preservation and is extensible to new data types.

[1]  Chengzheng Sun,et al.  Consistency maintenance in real-time collaborative graphics editing systems , 2002, Interactions.

[2]  André van der Hoek International workshop on software configuration management (SCM-10): new practices, new challenges, and new boundaries , 2001, SOEN.

[3]  Pascal Molli,et al.  VOTE: Group Editors Analyzing Tool: System Description , 2003, Electron. Notes Theor. Comput. Sci..

[4]  Prasun Dewan,et al.  A flexible object merging framework , 1994, CSCW '94.

[5]  Narain H. Gehani,et al.  Scalable Update Propagation in Epidemic Replicated Databases , 1996, EDBT.

[6]  Benjamin C. Pierce,et al.  What is a file synchronizer? , 1998, MobiCom '98.

[7]  Yanchun Zhang,et al.  Achieving convergence, causality preservation, and intention preservation in real-time cooperative editing systems , 1998, TCHI.

[8]  Dennis Shasha,et al.  The dangers of replication and a solution , 1996, SIGMOD '96.

[9]  Reidar Conradi,et al.  Version models for software configuration management , 1998, CSUR.

[10]  Haifeng Shen,et al.  A log compression algorithm for operation-based version control systems , 2002, Proceedings 26th Annual International Computer Software and Applications.

[11]  Jean Ferrié,et al.  Serialization of concurrent operations in a distributed collaborative environment , 1997, GROUP.

[12]  Hector Garcia-Molina,et al.  Meaningful change detection in structured data , 1997, SIGMOD '97.

[13]  Sorin Stratulat,et al.  A General Framework to Build Contextual Cover Set Induction Provers , 2001, J. Symb. Comput..

[14]  Jacky Estublier Software configuration management: a roadmap , 2000, ICSE '00.

[15]  Clarence A. Ellis,et al.  Concurrency control in groupware systems , 1989, SIGMOD '89.

[16]  Pascal Molli,et al.  Development of Transformation Functions Assisted by a Theorem Prover , 2002 .

[17]  Walter F. Tichy,et al.  Rcs — a system for version control , 1985, Softw. Pract. Exp..

[18]  Brian Berliner,et al.  CVS II: Parallelizing Software Dev elopment , 1998 .

[19]  Mahadev Satyanarayanan,et al.  Flexible and Safe Resolution of File Conflicts , 1995, USENIX.

[20]  John S. Heidemann,et al.  Resolving File Conflicts in the Ficus File System , 1994, USENIX Summer.

[21]  Marvin Theimer,et al.  Flexible update propagation for weakly consistent replication , 1997, SOSP.

[22]  Jean Ferrié,et al.  Concurrent operations in a distributed and mobile collaborative environment , 1998, Proceedings 14th International Conference on Data Engineering.

[23]  Henry M. Levy,et al.  Optimistic Replication for Internet Data Services , 2000, DISC.

[24]  Dean Daniels,et al.  Oracle's symmetric replication technology and implications for application design , 1994, SIGMOD '94.

[25]  Antony I. T. Rowstron,et al.  The IceCube approach to the reconciliation of divergent replicas , 2001, PODC '01.

[26]  Nicolas Vidot,et al.  Copies convergence in a distributed real-time collaborative environment , 2000, CSCW '00.