kirancodes.me
To Proof Maintenance & Beyond!

Preventing database deadlocks in applications

Mark Grechanik, B. M. Mainul Hossain, Ugo A. Buy, Haisheng Wang

Abstract

Many organizations deploy applications that use databases by sending Structured Query Language (SQL) statements to them and obtaining data that result from the execution of these statements. Since applications often share the same databases concurrently, database deadlocks routinely occur in these databases resulting in major performance degradation in these applications. Database engines do not prevent database deadlocks for the same reason that the schedulers of operating system kernels do not preempt processes in a way to avoid race conditions and deadlocks - it is not feasible to find an optimal context switching schedule quickly for multiple processes (and SQL statements), and the overhead of doing it is prohibitive.

BibTeX
@inproceedings{Grechanik-al:FSE13,
  author    = {Mark Grechanik and
               B. M. Mainul Hossain and
               Ugo A. Buy and
               Haisheng Wang},
  title     = {Preventing database deadlocks in applications},
  booktitle = {{ESEC/SIGSOFT} {FSE}},
  pages     = {356--366},
  publisher = {{ACM}},
  year      = {2013},
}

Related papers