DOI QR코드

DOI QR Code

Testing Transactions based on Verification of Isolation Levels

고립화 수준을 검증하기 위한 트랜잭션의 시험

  • 홍석희 (경성대학교 컴포터정보학부)
  • Published : 2008.07.28

Abstract

Concurrency and synchronization problems are often caused by database applications concurrently accessing databases managed by DBMS. Most commercial DBMSs support isolation levels to resolve these problems. Verification of isolation levels are most important because consistency and integrity constraints of the database can be violated according to isolation levels of transactions that consists of database applications. We propose a test tool set to verify and reveal faulty settings of isolation levels and implement a prototype of the test tool set. The proposed tool set analyzes the SQL statements of ESQL/C programs, attaches the test codes to verify isolation levels, runs the test transactions and detects errors.

데이터베이스 응용 프로그램들은 DBMS가 관리하는 데이터베이스를 동시에 접근하기 때문에 동시성 문제가 발생하며 이를 해결하기 위해서 대부분의 상업용 DBMS들은 고립화 수준을 설정할 수 있게 한다. 데이터베이스 응용 프로그램을 구성하는 트랜잭션들의 고립화 수준에 따라서 데이터베이스의 일관성이 위반될 수도 있기 때문에 트랜잭션의 고립화 수준의 검증은 중요하다. 본 논문은 트랜잭션의 고립화 수준 설정 오류를 검증하기 위한 시험 도구를 제안하고 프로토타입을 구현한다. 시험 도구는 ESQL/C 프로그램을 분석하여 고립화 수준을 검증할 수 있는 코드를 추가하여 시험 트랜잭션을 실행시키고 고립화 수준의 오류를 검출할 수 있게 한다.

Keywords

References

  1. B. W. Boehm, Software Engineering Economics, Englewood Cliffs, N. J.:Prentice Hall, 1981.
  2. D. Chays, Y. Deng, P. Frankl, S. Dan, F. Vokolos, and E. Weyuker, "An AGENDA for Testing Relational Database Applications," Software Testing, Verification and Reliability, Vol.14, No.1, pp.17-44, 2004. https://doi.org/10.1002/stvr.286
  3. Y. Deng and D. Chays, "Testing Database Transactions with AGENDA," Proceedings of International Conference on Software Engineering, St. Louis, MI, pp.15-21, 2005. https://doi.org/10.1145/1062455.1062486
  4. Y. Deng, P. Frankl, and Z. Chen, "Testing Database Transaction Concurrency," Proceedings of the 18th IEEE Internatioanl Conference on Automated Software Engineering, Los Alamitos, CA, pp.184-193, 2003. https://doi.org/10.1109/ASE.2003.1240306
  5. B. Daou, R. Haraty, and N. Mansour, "Regression Testing of Database Applications," Proceedings of the ACM Symposium on Applied Computing, Las Vegas, NV, pp.285-290, 2001. https://doi.org/10.1145/372202.372342
  6. F. Haftmann, D. Kossmann, and A. Kreutz, "Efficient Regression Tests for Database Applications," Proceedings of Conference on Innovative Data Systems Research, pp.95-106, 2005.
  7. ANSI X3.135-1992, American National Standard for Information Systems - Database Language - SQL, 1992(11).
  8. J. Melton and A. R. Simon, Understanding The New SQL:A Complete Guide, Morgan Kaufmann, 1993.
  9. H. Berenson, P. Bernstein, J. Gray, J. Melton, E. O'Nei,l and P. O'Neil, "A Critique of ANSI SQL Isolation Levels," Proceedings of ACM SIGMOD, San Jose, CA, pp.1-10, 1995. https://doi.org/10.1145/223784.223785