Abstract

An important property of transactions is that they are isolated, which means that the execution of transactions has the same effect as running the transactions serially, one after another, in sequence, with no overlap in executing any two of them. Such an execution is called serializable and this gives each user the easy-to-understand illusion that while the system is processing his or her transaction, it is doing no other work. The most popular mechanism used to attain serializability is locking. A lock is the reservation that each transaction has to access data it uses. The intuition behind locking is that it avoids interference between transactions by using conflicting locks to synchronize the execution order of conflicting operations. Although the concept of locking is simple, its effects on performance and correctness can be complex, counterintuitive, and hard to predict. Building robust TP applications requires a solid understanding of locking. Locking affects performance. When a transaction sets a lock, it delays other transactions that need to set a conflicting lock. Everything else being equal, the more transactions that are running concurrently, the more likely that such delays will happen.

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.