{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,1,8]],"date-time":"2026-01-08T17:14:23Z","timestamp":1767892463429,"version":"3.49.0"},"reference-count":20,"publisher":"MDPI AG","issue":"11","license":[{"start":{"date-parts":[[2022,11,21]],"date-time":"2022-11-21T00:00:00Z","timestamp":1668988800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"funder":[{"DOI":"10.13039\/501100001824","name":"GACR","doi-asserted-by":"publisher","award":["19-04579S"],"award-info":[{"award-number":["19-04579S"]}],"id":[{"id":"10.13039\/501100001824","id-type":"DOI","asserted-by":"publisher"}]},{"name":"Lendulet Program of the HAS","award":["19-04579S"],"award-info":[{"award-number":["19-04579S"]}]}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Future Internet"],"abstract":"<jats:p>Data reconciliation in general, and filesystem synchronization in particular, lacks rigorous theoretical foundation. This paper presents, for the first time, a complete analysis of synchronization for two replicas of a theoretical filesystem. Synchronization has two main stages: identifying the conflicts, and resolving them. All existing (both theoretical and practical) synchronizers are operation-based: they define, using some rationale or heuristics, how conflicts are to be resolved without considering the effect of the resolution on subsequent conflicts. Instead, our approach is declaration-based: we define what constitutes the resolution of all conflicts, and for each possible scenario we prove the existence of sequences of operations\/commands which convert the replicas into a common synchronized state. These sequences consist of operations rolling back some local changes, followed by operations performed on the other replica. The set of rolled-back operations provides the user with clear and intuitive information on the proposed changes, so she can easily decide whether to accept them or ask for other alternatives. All possible synchronized states are described by specifying a set of conflicts, a partial order on the conflicts describing the order in which they need to be resolved, as well as the effect of each decision on subsequent conflicts. Using this classification, the outcomes of different conflict resolution policies can be investigated easily.<\/jats:p>","DOI":"10.3390\/fi14110344","type":"journal-article","created":{"date-parts":[[2022,11,22]],"date-time":"2022-11-22T03:08:37Z","timestamp":1669086517000},"page":"344","update-policy":"https:\/\/doi.org\/10.3390\/mdpi_crossmark_policy","source":"Crossref","is-referenced-by-count":4,"title":["Data Synchronization: A Complete Theoretical Solution for Filesystems"],"prefix":"10.3390","volume":"14","author":[{"ORCID":"https:\/\/orcid.org\/0000-0003-2449-7923","authenticated-orcid":false,"given":"Elod P.","family":"Csirmaz","sequence":"first","affiliation":[{"name":"Alfr\u00e9d R\u00e9nyi Institute of Mathematics, 1053 Budapest, Hungary"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-7530-8307","authenticated-orcid":false,"given":"Laszlo","family":"Csirmaz","sequence":"additional","affiliation":[{"name":"Alfr\u00e9d R\u00e9nyi Institute of Mathematics, 1053 Budapest, Hungary"},{"name":"Institute of Information Theory and Automation, CZ-182 00 Prague, Czech Republic"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"1968","published-online":{"date-parts":[[2022,11,21]]},"reference":[{"key":"ref_1","doi-asserted-by":"crossref","unstructured":"Pregui\u00e7a, N. (2018). Conflict-free replicated data types: An overview. arXiv.","DOI":"10.1007\/978-3-319-63962-8_185-1"},{"key":"ref_2","doi-asserted-by":"crossref","unstructured":"Shapiro, M., Pregui\u00e7a, N., Baquero, C., and Zawirski, M. (2011). Conflict-free replicated data types. Stabilization, Safety, and Security of Distributed Systems, Springer.","DOI":"10.1007\/978-3-642-24550-3_29"},{"key":"ref_3","doi-asserted-by":"crossref","first-page":"63","DOI":"10.1145\/274444.274447","article-title":"Achieving convergence, causality preservation, and intention preservation in real-time cooperative editing systems","volume":"5","author":"Sun","year":"1998","journal-title":"ACM Trans. Comput. Hum. Interact."},{"key":"ref_4","doi-asserted-by":"crossref","unstructured":"Sun, C., and Ellis, C. (1998, January 14\u201318). Operational transformation in real-time group editors. Proceedings of the Computer Supported Cooperative Work Seattle, Washington, DC, USA.","DOI":"10.1145\/289444.289469"},{"key":"ref_5","unstructured":"Ellis, C.A., and Gibbs, S.J. (June, January 31). Concurrency control in groupware systems. Proceedings of the SIGMOID conference on Management of Data, Portland, OR, USA."},{"key":"ref_6","unstructured":"Day-Richter, J. (2022, September 09). What\u2019s Different about the New Google Docs: Making Collaboration Fast. Available online: https:\/\/drive.googleblog.com\/2010\/09\/whats-different-about-new-google-docs.html."},{"key":"ref_7","doi-asserted-by":"crossref","unstructured":"Nicolaescu, P., Jahns, K., Derntl, M., and Klamma, R. (2016, January 13\u201316). Near real-time peer-to-peer shared editing on extensible data types. Proceedings of the 19th International Conference on Supporting Group Work, Sanibel Island, FL, USA.","DOI":"10.1145\/2957276.2957310"},{"key":"ref_8","doi-asserted-by":"crossref","unstructured":"Klophaus, R. (2010, January 1\u20132). Riak Core: Building distributed applications without shared state. Proceedings of the SIGPLAN Commercial Users of Functional Programming (CUFP \u201910), Baltimore, MD, USA. Article 14.","DOI":"10.1145\/1900160.1900176"},{"key":"ref_9","doi-asserted-by":"crossref","unstructured":"Ng, A., and Sun, C. (2016, January 13\u201316). Operational transformation for real-time synchronization of shared workspace in cloud storage. Proceedings of the 19th International Conference on Supporting Group Work, Sanibel Island, FL, USA.","DOI":"10.1145\/2957276.2957278"},{"key":"ref_10","doi-asserted-by":"crossref","unstructured":"Tao, V., Shapiro, M., and Rancurel, V. (2015, January 13\u201315). Merging semantics for conflict updates in geo-distributed file systems. Proceedings of the 15th ACM International Systems and Storage Conference, Haifa, Israel.","DOI":"10.1145\/2757667.2757683"},{"key":"ref_11","doi-asserted-by":"crossref","unstructured":"Balasubramaniam, S., and Pierce, B.C. (1998, January 25\u201330). What is a File Synchronizer?. Proceedings of the 4th Annual ACM\/IEEE International Conference on Mobile Computing and Networking, Dallas, TX, USA.","DOI":"10.1145\/288235.288261"},{"key":"ref_12","doi-asserted-by":"crossref","unstructured":"Csirmaz, E.P., and Csirmaz, L. (2022). Algebra of Data Reconciliation. Stud. Sci. Math. Hung.","DOI":"10.1556\/012.2022.01529"},{"key":"ref_13","doi-asserted-by":"crossref","unstructured":"Kermarrec, A., Rowstron, A., Shapiro, M., and Druschel, P. (2001, January 25\u201327). The IceCube approach to the reconciliation of divergent replicas. Proceedings of the ACM Symposium on principles of distributed computing 2001, Newport, RI, USA.","DOI":"10.1145\/383962.384020"},{"key":"ref_14","unstructured":"Martins, V., Pacitti, E., and Valduriez, P. (2005, January 2\u20134). Distributed semantic reconciliation of replicated data. Proceedings of the CDUR, Paris, France."},{"key":"ref_15","unstructured":"Pierce, B.C., and Vouillon, J. (2022, September 09). What\u2019s in Unison? A Formal Specification and Reference Implementation of a File Synchronizer. U. of Pennsylvania Technical Reports (CIS) 40. Available online: http:\/\/repository.upenn.edu\/cis_reports\/40."},{"key":"ref_16","doi-asserted-by":"crossref","unstructured":"Shekow, M. (2019). Syncpal: A Simple and Iterative Reconciliation Algorithm for File Synchronizers. [Ph.D. Thesis, Aachen University].","DOI":"10.1007\/978-3-030-22496-7_1"},{"key":"ref_17","doi-asserted-by":"crossref","unstructured":"Terry, D.B., Theimer, M.M., Petersen, K., Demers, A.J., Spreitzer, M.J., and Hauser, C.H. (1995, January 3\u20136). Managing Update Conflicts in Bayou, a Weakly Connected Replicated Storage System. Proceedings of the Fifteenth ACM Symposium on Operating Systems Principles, Mountain, CO, USA.","DOI":"10.1145\/224056.224070"},{"key":"ref_18","unstructured":"Csirmaz, E.P. (2016). Algebraic File Synchronization: Adequacy and Completeness. arXiv."},{"key":"ref_19","unstructured":"Antkiewicz, M., and Czarnecki, K. (2007, January 2\u20137). Design space of heterogeneous synchronization. Proceedings of the GTTSE 2007: International Summerschool on Generative and Transformational Techniques in Software Engineering 2007, Braga, Portugal."},{"key":"ref_20","doi-asserted-by":"crossref","unstructured":"Pregui\u00e7a, N., Marques, J.M., Shapiro, M., and Letia, M. (2009, January 23\u201326). A commutative replicated data type for cooperative editing. Proceedings of the 2009 29th International Conference on Distributed Computing Systems, Montreal, QC, Canada.","DOI":"10.1109\/ICDCS.2009.20"}],"container-title":["Future Internet"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.mdpi.com\/1999-5903\/14\/11\/344\/pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,10,11]],"date-time":"2025-10-11T01:23:07Z","timestamp":1760145787000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.mdpi.com\/1999-5903\/14\/11\/344"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2022,11,21]]},"references-count":20,"journal-issue":{"issue":"11","published-online":{"date-parts":[[2022,11]]}},"alternative-id":["fi14110344"],"URL":"https:\/\/doi.org\/10.3390\/fi14110344","relation":{},"ISSN":["1999-5903"],"issn-type":[{"value":"1999-5903","type":"electronic"}],"subject":[],"published":{"date-parts":[[2022,11,21]]}}}