Abstract
This paper provides a formal specification and proof of correctness of a basic Generalized Snapshot Isolation certification-based data replication protocol for database middleware architectures. It has been modeled using a state transition system, as well as the main system components, allowing a perfect match with the usual deployment in a middleware system. The proof encompasses both safety and liveness properties, as it is commonly done for a distributed algorithm. Furthermore, a crash failure model has been assumed for the correctness proof, although recovery analysis is not the aim of this paper. This allows an easy extension toward a crash-recovery model support in future works. The liveness proof focuses in the uniform commit: if a site has committed a transaction, the rest of sites will either commit it or it would have crashed.
Similar content being viewed by others
References
Agrawal D, Alonso G, El Abbadi A, Stanoi I (1997) Exploiting atomic broadcast in replicated databases (extended abstract). In: Lengauer C, Griebl M, Gorlatch S (eds) Euro-Par. Lecture notes in computer science, vol 1300. Springer, Berlin, pp 496–503
Amza C, Cox AL, Zwaenepoel W (2003) Distributed versioning: Consistent replication for scaling back-end databases of dynamic content web sites. In: Endler M, Schmidt DC (eds) Middleware. Lecture notes in computer science, vol 2672. Springer, Berlin, pp 282–304
Armendáriz-Iñigo JE, González de Mendívil JR, Muñoz-Escoí FD (2005) A lock-based algorithm for concurrency control and recovery in a middleware replication software architecture. In: HICSS. IEEE Computer Science, Los Alamitos, p 291a
Berenson H, Bernstein PA, Gray J, Melton J, O’Neil EJ, O’Neil PE (1995) A critique of ANSI SQL isolation levels. In: Carey MJ, Schneider DA (eds) SIGMOD conference. ACM Press, New York, pp 1–10
Bernstein PA (1996) Middleware: A model for distributed system services. Commun ACM 39(2):86–98
Bernstein PA, Hadzilacos V, Goodman N (1987) Concurrency control and recovery in database systems. Addison Wesley, Reading
Carey MJ, Livny M (1991) Conflict detection tradeoffs for replicated data. ACM Trans Database Syst 16(4):703–746
Cecchet E, Marguerite J, Zwaenepoel W (2004) C-JDBC: Flexible database clustering middleware. In: USENIX annual technical conference, FREENIX Track, USENIX, pp 9–18
Chockler G, Keidar I, Vitenberg R (2001) Group communication specifications: A comprehensive study. ACM Comput Surv 33(4):427–469
Daudjee K, Salem K (2006) Lazy database replication with snapshot isolation. In: VLDB. Seoul, Korea
Défago X, Schiper A, Urbán P (2004) Total order broadcast and multicast algorithms: Taxonomy and survey. ACM Comput Surv 36(4):372–421. http://doi.acm.org/10.1145/1041680.1041682
Elnikety S, Pedone F, Zwaenopoel W (2005) Database replication using generalized snapshot isolation. In: SRDS. IEEE Computer Society, Los Alamitos
Fekete A, Liarokapis D, O’Neil E, O’Neil P, Shasha D (2005) Making snapshot isolation serializable. ACM Trans Database Syst 30(2):492–528. http://doi.acm.org/10.1145/1071610.1071615
González de Mendívil JR, Armendáriz-Iñigo JE, Muñoz-Escoí FD, Irún-Briz L, Garitagoitia JR, Juárez-Rodríguez JR (2007) Non-blocking ROWA protocols implement GSI using SI replicas. Tech Rep ITI-ITE-07/10, Instituto Tecnológico de Informática. http://www.iti.upv.es/~armendariz/research/pdf/ITI-ITE-07-10.pdf
Gray J, Helland P, O’Neil PE, Shasha D (1996) The dangers of replication and a solution. In: Jagadish HV, Mumick IS (eds) SIGMOD conference. ACM Press, New York, pp 173–182
Hadzilacos V, Toueg S (1994) A modular approach to fault-tolerant broadcasts and related problems. Tech Rep TR94-1425, Dep of Computer Science, Cornell University, Ithaca, New York (USA). http://citeseer.ist.psu.edu/hadzilacos94modular.html
Hoare CAR (1985) Communicating sequential processes. Prentice-Hall, New York
Irún-Briz L, Decker H, de Juan-Marín R, Castro-Company F, Armendáriz-Iñigo JE, Muñoz-Escoí FD (2005) MADIS: A slim middleware for database replication. In: Cunha JC, Medeiros PD (eds) Euro-Par. Lecture notes in computer science, vol 3648. Springer, Berlin, pp 349–359
Juárez-Rodríguez JR, Armendáriz-Iñigo JE, González de Mendívil JR, Muñoz-Escoí FD, Garitagoitia JR (2007) A weak voting database replication protocol providing different isolation levels. In: NOTERE’07
Kemme B (2000) Database replication for clusters of workstations (eth nr 13864). PhD thesis, Swiss Federal Institute of Technology, Zurich, Switzerland
Kemme B, Alonso G (2000) A new approach to developing and implementing eager database replication protocols. ACM Trans Database Syst 25(3):333–379
Kemme B, Pedone F, Alonso G, Schiper A, Wiesmann M (2003) Using optimistic atomic broadcast in transaction processing systems. IEEE Trans Knowl Data Eng 15(4):1018–1032
Lamport L (2002) Specifying Systems: The TLA+ language and tools for hardware and software engineers. Addison Wesley Professional, Reading
Lin Y, Kemme B, Patiño-Martínez M, Jiménez-Peris R (2005) Middleware based data replication providing snapshot isolation. In: SIGMOD conference
Lynch NA, Tuttle MR (1987) Hierarchical correctness proofs for distributed algorithms. In: PODC, pp 137–151
Lynch NA, Tuttle MR (1988) An introduction to input/output automata. Tech Rep MIT/LCS/TM-373, Massachusetts Institute of Technology
Milner R (1980) A calculus of communicating systems. Lecture notes in computer science, vol 92. Springer, Berlin
Muñoz-Escoí FD, Pla-Civera J, Ruiz-Fuertes MI, Irún-Briz L, Decker H, Armendáriz-Iñigo JE, González de Mendívil JR (2006) Managing transaction conflicts in middleware-based database replication architectures. In: SRDS, pp 401–410
Oracle Corporation (2007) Oracle 11g Release 1. Accessible in http://download.oracle.com/docs/cd/B28359_01/server.111/b28318.pdf
Patiño-Martínez M, Jiménez-Peris R, Kemme B, Alonso G (2005) MIDDLE-R: Consistent database replication at the middleware level. ACM Trans Comput Syst 23(4):375–423
Pedone F (1999) The database state machine and group communication issues (thèse n 2090). PhD thesis, École Polytecnique Fédérale de Lausanne, Lausanne, Switzerland
Pedone F, Guerraoui R, Schiper A (1998) Exploiting atomic broadcast in replicated databases. In: Euro-Par
Plattner C, Alonso G (2004) Ganymed: Scalable replication for transactional web applications. In: Jacobsen HA (ed) Middleware. Lecture notes in computer science, vol 3231. Springer, Berlin, pp 155–174
Plattner C, Alonso G, Tamer-Özsu M (2006) Extending DBMSs with satellite databases. VLDB J
PostgreSQL (2007) The world’s most advance open source database web site. Accessible in http://www.postgresql.org
Rodrigues L, Miranda H, Almeida R, Martins J, Vicente P (2002) The GlobData fault-tolerant replicated distributed object database. In: EurAsia-ICT, pp 426–433
Schmidt R, Pedone F (2007) A formal analysis of the deferred update technique. Tech Rep LABOS-REPORT-2007-002, École Polytechnique Fédérale de Lausanne (EPFL)
Shankar AU (1993) An introduction to assertional reasoning for concurrent systems. ACM Comput Surv 25(3):225–262
Stonebraker M (1979) Concurrency control and consistency of multiple copies of data in distributed ingres. IEEE Trans Softw Eng 5(3):188–194
Sybase, Inc (2003) Replication strategies: Data migration, distribution and synchronization. White paper, 30 p
Wiesmann M, Pedone F, Schiper A, Kemme B, Alonso G (2000) Understanding replication in databases and distributed systems. In: ICDCS, pp 464–474
Wiesmann M, Schiper A (2005) Comparison of database replication techniques based on total order broadcast. IEEE TKDE 17(4):551–566
Wu S, Kemme B (2005) Postgres-R(SI): Combining replica control with concurrency control based on snapshot isolation. In: ICDE. IEEE Computer Society, Los Alamitos, pp 422–433
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
González de Mendívil, J.R., Armendáriz-Iñigo, J.E., Garitagoitia, J.R. et al. A formal analysis of database replication protocols with SI replicas and crash failures. J Supercomput 50, 121–161 (2009). https://doi.org/10.1007/s11227-008-0255-4
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11227-008-0255-4