Advertisement

Acta Informatica

, Volume 46, Issue 4, pp 297–330 | Cite as

Correctness proof of a database replication protocol under the perspective of the I/O automaton model

  • José Enrique Armendáriz-IñigoEmail author
  • José Ramón González de Mendívil
  • José Ramón Garitagoitia
  • Francesc D. Muñoz-Escoí
Original Article

Abstract

Correctness of recent database replication protocols has been justified in a rather informal way focusing only in safety properties and without using any rigorous formalism. Since a database replication protocol must ensure some degree of replica consistency and that transactions follow a given isolation level, previous proofs only focused in these two issues. This paper proposes a formalization using the I/O automaton model, identifying several components in the distributed system that are involved in the replication support (replication protocol, group communication system, database replicas) and specifying clearly their actions in the global replicated system architecture. Then, a general certification-based replication protocol guaranteeing the snapshot isolation level is proven correct. To this end, different safety and liveness properties are identified, checked and proved. Our work shows that some details of the replication protocols that were ignored in previous correctness justifications are indeed needed in order to guarantee our proposed correctness criteria.

Keywords

Reachable State Correctness Proof Liveness Property Correctness Criterion Local Transaction 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Adya, A.: Weak consistency: a generalized theory and optimistic implementations for distributed transactions. Ph.D. thesis, Massachusetts Institute of Technology (1999)Google Scholar
  2. 2.
    Armendáriz-Iñigo, J.E., Juárez-Rodríguez, J.R., González de Mendívil, J.R.: Correctness criteria for replicated database systems with snapshot isolation replicas. Tech. Rep. ITI-ITE-08/03, Instituto Tecnológico de Informática (2008). http://www.iti.upv.es/~armendariz/research/pdf/ITI-ITE-08-03.pdf
  3. 3.
    Berenson, H., Bernstein, P.A., Gray, J., Melton, J., O’Neil, E.J., O’Neil, P.E.: A critique of ANSI SQL isolation levels. In: Carey, M.J., Schneider, D.A. (eds.) SIGMOD Conference, pp. 1–10. ACM Press, New York (1995)Google Scholar
  4. 4.
    Bernstein P.A.: Middleware: a model for distributed system services. Commun. ACM 39(2), 86–98 (1996)CrossRefGoogle Scholar
  5. 5.
    Bernstein P.A., Hadzilacos V., Goodman N.: Concurrency Control and Recovery in Database Systems. Addison Wesley, Reading (1987)Google Scholar
  6. 6.
    Carey M.J., Livny M.: Conflict detection tradeoffs for replicated data. ACM Trans. Database Syst. 16(4), 703–746 (1991)CrossRefGoogle Scholar
  7. 7.
    Carvalho N., Correia A. Jr, Pereira J., Rodrigues L., Oliveira R.C., Guedes S.: On the use of a reflective architecture to augment database management systems. J. Univers. Comput. Sci. 13(8), 1110–1135 (2007)Google Scholar
  8. 8.
    Chandra T.D., Toueg S.: Unreliable failure detectors for reliable distributed systems. J. ACM 43(2), 225–267 (1996)zbMATHCrossRefMathSciNetGoogle Scholar
  9. 9.
    Chockler G., Keidar I., Vitenberg R.: Group communication specifications: a comprehensive study. ACM Comput. Surv. 33(4), 427–469 (2001)CrossRefGoogle Scholar
  10. 10.
    Daudjee, K., Salem, K.: Lazy database replication with snapshot isolation. In: VLDB. Seoul, Korea (2006)Google Scholar
  11. 11.
    Défago, X., Schiper, A., Urbán, P.: Total order broadcast and multicast algorithms: taxonomy and survey. ACM Comput. Surv. 36(4), 372–421 (2004). http://doi.acm.org/10.1145/1041680.1041682 Google Scholar
  12. 12.
    Elnikety, S., Dropsho, S., Pedone, F.: Tashkent: Uniting durability with transaction ordering for high-performance scalable database replication. In: ACM Eurosys. Leuven (2006)Google Scholar
  13. 13.
    Elnikety, S., Pedone, F., Zwaenopoel, W.: Database replication using generalized snapshot isolation. In: The 24th IEEE Symposium on Reliable Distributed Systems (SRDS’05). IEEE Computer Society, Los Alamitos (2005)Google Scholar
  14. 14.
    Fekete, A., Liarokapis, D., O’Neil, E., O’Neil, P., Shasha, D.: Making snapshot isolation serializable. ACM Trans. Database Syst. 30(2), 492–528 (2005). http://doi.acm.org/10.1145/1071610.1071615 Google Scholar
  15. 15.
    Goldman K.J., Lynch N.A.: Quorum consensus in nested transaction systems. ACM Trans. Database Syst. 19(4), 537–585 (1994)CrossRefGoogle Scholar
  16. 16.
    González de Mendívil, J.R., Armendáriz-Iñigo, J.E., Muñoz-Escoí, F.D., Irún-Briz, L., Garitagoitia, J.R., Juárez-Rodríguez, J.R.: Non-blocking ROWA protocols implement GSI using SI replicas. Tech. Rep. ITI-ITE-07/10, Instituto Tecnológico de Informática (2007). http://www.iti.upv.es/~armendariz/research/pdf/ITI-ITE-07-10.pdf
  17. 17.
    Gray, J., Helland, P., O’Neil, P.E., Shasha, D.: The dangers of replication and a solution. In: Jagadish, H.V., Mumick, I.S. (eds.) SIGMOD Conference, pp. 173–182. ACM Press (1996)Google Scholar
  18. 18.
    Hoare C.A.R.: Communicating Sequential Processes. Prentice-Hall, Englewood Cliffs (1985)zbMATHGoogle Scholar
  19. 19.
    Holliday J., Steinke R.C., Agrawal D., Abbadi A.E.: Epidemic algorithms for replicated databases. IEEE Trans. Knowl. Data Eng. 15(5), 1218–1238 (2003)CrossRefGoogle Scholar
  20. 20.
    Kemme, B., Alonso, G.: Don’t be lazy, be consistent: postgres-R, a new way to implement database replication. In: Abbadi, A.E., Brodie, M.L., Chakravarthy, S., Dayal, U., Kamel, N., Schlageter, G., Whang, K.Y. (eds.) VLDB, pp. 134–143. Morgan Kaufmann, Los Altos (2000)Google Scholar
  21. 21.
    Kemme B., Alonso G.: A new approach to developing and implementing eager database replication protocols. ACM Trans. Database Syst. 25(3), 333–379 (2000)CrossRefGoogle Scholar
  22. 22.
    Kemme, B., Bartoli, A., Babaoglu, Ö.: Online reconfiguration in replicated databases based on group communication. In: DSN, pp. 117–130. IEEE-CS Press, Los Alamitos (2001)Google Scholar
  23. 23.
    Lamport, L.: Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineers. Addison Wesley Professional (2002)Google Scholar
  24. 24.
    Liang, W., Kemme, B.: Online recovery in cluster databases. In: 11th international conference on Extending database technology, pp. 121–132. ACM, New York (2008)Google Scholar
  25. 25.
    Lin, Y., Kemme, B., Patiño-Martínez, M., Jiménez-Peris, R.: Middleware based data replication providing snapshot isolation. In: SIGMOD Conference. ACM, New York (2005)Google Scholar
  26. 26.
    Lynch N.A.: Distributed Systems. Morgan Kaufmann Publishers, Los Altos (1996)Google Scholar
  27. 27.
    Lynch, N.A., Merritt, M., Weihl, W.E., Fekete, A.: A theory of atomic transactions. In: 2nd Intnl. Conf. on Database Theory (ICDT), LNCS 326, pp. 41–71. Springer, Bruges (1988)Google Scholar
  28. 28.
    Lynch N.A., Tuttle M.R.: An introduction to input/output automata. CWI-Q. 2(3), 219–246 (1989)zbMATHMathSciNetGoogle Scholar
  29. 29.
    Microsoft SQL Server 2005: SQL Server 2005 row versioning-based transaction isolation. (2008). http://msdn2.microsoft.com/en-us/library/ms345124.aspx
  30. 30.
    Milner, R.: A Calculus of Communicating Systems. In: Lecture Notes in Computer Science, vol. 2. 171 pp. Springer-Verlag (1980)Google Scholar
  31. 31.
    Muñoz-Escoí, F.D., Pla-Civera, J., Ruiz-Fuertes, M.I., Irún-Briz, L., Decker, H., Armendáriz-Iñigo, J.E., de Mendívil, J.R.G.: Managing transaction conflicts in middleware-based database replication architectures. In: SRDS, pp. 401–410. IEEE Computer Society (2006)Google Scholar
  32. 32.
    Oracle Corporation: Oracle 11g Release 1 (2008). Accessible in URL: http://download.oracle.com/docs/cd/B28359_01/server.111/b28318.pdf
  33. 33.
    Patiño-Martínez M., Jiménez-Peris R., Kemme B., Alonso G.: MIDDLE-R: consistent database replication at the middleware level. ACM Trans. Comput. Syst. 23(4), 375–423 (2005)CrossRefGoogle Scholar
  34. 34.
    Pedone, F.: The database state machine and group communication issues (thèse n. 2090). Ph.D. thesis, École Polytecnique Fédérale de Lausanne, Lausanne (1999)Google Scholar
  35. 35.
    Plattner C., Alonso G., Özsu M.T.: Extending DBMSs with satellite databases. VLDB J. 17(4), 657–682 (2008)CrossRefGoogle Scholar
  36. 36.
    PostgreSQL: The world’s most advance open source database web site (2008). Accessible in URL: http://www.postgresql.org
  37. 37.
    Ruiz-Fuertes, M.I., Pla-Civera, J., Armendáriz-Iñigo, J.E., de Mendívil, J.R.G., Muñoz-Escoí, F.D.: Revisiting certification-based replicated database recovery. In: Meersman, R., Tari, Z. (eds.) OTM Conferences (1). Lecture Notes in Computer Science, vol. 4803, pp. 489–504. Springer (2007)Google Scholar
  38. 38.
    Salas, J., Jiménez-Peris, R., Patiño-Martínez, M., Kemme, B.: Lightweight reflection for middleware-based database replication. In: SRDS, pp. 377–390. IEEE Computer Society (2006)Google Scholar
  39. 39.
    Shankar A.U.: An introduction to assertional reasoning for concurrent systems. ACM Comput. Surv. 25(3), 225–262 (1993)CrossRefGoogle Scholar
  40. 40.
    Wiesmann M., Schiper A.: Comparison of database replication techniques based on total order broadcast. IEEE TKDE 17(4), 551–566 (2005)Google Scholar
  41. 41.
    Wiesmann, M., Schiper, A., Pedone, F., Kemme, B., Alonso, G.: Database replication techniques: a three parameter classification. In: Proc. of the 19th IEEE Symposium on Reliable Distributed Systems (SRDS’00), pp. 206–217 (2000)Google Scholar
  42. 42.
    Wu, S., Kemme, B.: Postgres-R(SI): combining replica control with concurrency control based on snapshot isolation. In: ICDE, pp. 422–433. IEEE Computer Society (2005)Google Scholar
  43. 43.
    Zuikeviciute, V., Pedone, F.: Conflict aware load balancing techniques for database replication. In: 23rd ACM Symposium on Applied Computing (SAC 2008), pp. 2169–2173. ACM Press, New York (2008)Google Scholar

Copyright information

© Springer-Verlag 2009

Authors and Affiliations

  • José Enrique Armendáriz-Iñigo
    • 1
    Email author
  • José Ramón González de Mendívil
    • 1
  • José Ramón Garitagoitia
    • 1
  • Francesc D. Muñoz-Escoí
    • 2
  1. 1.Dpto. Ingeniería Matemática e InformáticaUniversidad Pública de NavarraPamplonaSpain
  2. 2.Instituto Tecnológico de InformáticaUniversidad Politécnica de ValenciaValenciaSpain

Personalised recommendations