Types of locks, Database Management System

Assignment Help:

Types of Locks

There are two necessary types of locks:

  • Binary lock: This locking mechanism has two states for to a data item: locked or unlocked
  • Multiple-mode locks: In this locking type every data item can be in 3 states read locked or shared locked, write locked or exclusive locked or unlocked.

Let us first take an instance for binary locking and describes how it solves the concurrency related troubles. Let us reconsider the transactions T1 and T2 for this purpose; though we will add to needed binary locks to them.

Schedule

T1

T2

Lock X

Lock X

 

Read X

Read X

 

Subtract 100

Subtract 100

 

Write X

Write X

 

Unlock X

Unlock X

 

Lock X

 

Lock X

Lock Y

 

Lock Y

Read X

 

Read X

Read Y

 

Read Y

Display X+Y

 

Display X+Y

Unlock X

 

Unlock X

Unlock Y

 

Unlock Y

Lock Y

Lock Y

 

Read Y

Read Y

 

Add 100

Add 100

 

Write Y

Write Y

 

Unlock Y

Unlock Y

 

 

 

 

                                                         Figure: An incorrect locking implementation

Does the locking as completed above solve the problem of concurrent transactions? No the similar problems still remains. Try working with the old value. Therefore, locking should be completed with some logic in order to make sure that locking results in no concurrency related problem. One such answer is given below:

Schedule

T1

T2

Lock X

Lock X

 

Lock Y

Lock Y

 

Read X

Read X

 

Subtract 100

Subtract 100

 

Write X

Write X

 

Lock X (issued by

T2)

Lock X: denied as T1 holds the lock.

The transaction T2 Waits and T1 continues.

Read Y

Read Y

 

Add 100

Add 100

 

Write Y

Write Y

 

Unlock X

Unlock X

 

 

The lock request of T2 on X can now

be granted it can resumes by locking X

Unlock Y

Unlock Y

 

Lock Y

 

Lock Y

Read X

 

Read X

Read Y

 

Read Y

Display X+Y

 

Display X+Y

Unlock X

 

Unlock X

Unlock Y

 

Unlock Y

                                                              Figure: A correct but restrictive locking implementation

Therefore, the locking as above when you get all the locks at the starting of the transaction and release them at the end ensures that transactions are implemented with no concurrency related problems. Though, such a scheme limits the concurrency. We will talk about a two-phase locking method in the next subsection that gives sufficient concurrency. Though, let us first discuss multiple mode locks.


Related Discussions:- Types of locks

Advantages and disadvantages of using a database system, What are the advan...

What are the advantages and disadvantages of using a database system. Sol. Advantages of Database System (DBMS) :  (1) Data Redundancy and Inconsistency: Since differen

Single and multi valued attributes, Attributes having a one value for a par...

Attributes having a one value for a particular entity. For instance, Age is a single valued attribute of a student entity. Attributes  that  have  more  than  single  values

What are the two methods for dealing deadlock problem, What are the two met...

What are the two methods for dealing deadlock problem? The two procedures for dealing deadlock problem is deadlock detection and deadlock recovery.

Explain the isa relationship, Explain the ISA relationship Answer: IS...

Explain the ISA relationship Answer: ISA relationship - ISA notation is employed in generalization/ specialization to depict relationship among lower and higer level entity s

Implement a cache simulator, You are required to program (in a high level l...

You are required to program (in a high level language such as C, C++, Java) and implement a cache simulator which will have the following inputs and outputs:- INPUTS

What is meant by object-oriented data model, What is meant by object-orient...

What is meant by object-oriented data model? The object-oriented paradigm is based on encapsulation of data and code related to an object in to a one unit, whose contents are n

Triggers and Stored Procedures, 10A.53 Code an Oracle Database trigger to e...

10A.53 Code an Oracle Database trigger to enforce the constraint that an employee can never change his or her department. 10A.54 Code an Oracle Database trigger to allow the delet

Database, How many physical thing?

How many physical thing?

Create table statements for original database, MySQL statements for extendi...

MySQL statements for extending the database to incorporate new facilities Deliverables for submission You must submit the following deliverables in the Assignment Dropbox in

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd