What are wait-for-graphs, Database Management System

Assignment Help:

What are wait-for-graphs?Give the algorithm to construct a wait-for-graph from a given schedule of transactions? How can deadlocks be detected from wait-for-graphs? 

 Ans:  The wait-for-graph is a directed graph and consists of nodes and directed arcs; the nodes of the graph are active transactions. An arc of the graph is inserted among two nodes if there is a data-item is needed by the node at the tail of the arc that is being held by the node at the head of the arc. 

  Algorithm to construct wait-for-graph is as follows:

1.  For every transaction Ti active at the time of deadlock detection, make a node labeled Ti in the wait-for-graph.

2.  For every case, if there is a transaction Ti, waiting for a data-item that is at present allocated and held by transaction Tj, then there is a directed arc from the node for transaction Ti, to the node for transaction Tj.

3.  For every case, if there is a directed arc from the node for transaction Ti, to the node for transaction Tj and transaction Tj released the lock, after that remove the arc between them.

4.  There no deadlock if the wait-for-graph is acyclic.  

The wait-for-graph is employed for detection of deadlock in the system. If there is any cycle exits in the wait-for-graph, all the active transaction (denoted as nodes) are in deadlock that are in the cycle.


Related Discussions:- What are wait-for-graphs

How to rearrange the execution order for efficiency, Rearrange the Executio...

Rearrange the Execution Order for Efficiency  Rearranging execution order for efficiency means executing such job that requires less execution time. By rearranging the object

Explain data dictonary on oracle, Explain data dictonary on oracle ? Da...

Explain data dictonary on oracle ? Data Dictionary - Data dictionaries are the system tables in which contain descriptions of the database objects and how they are structured.

Define query processing, Define Query Processing Query processing is th...

Define Query Processing Query processing is the process of selecting the best plan or strategy to be employed in responding to a database request. The plan is then executed to

What function divides one numeric expression, What function divides one num...

What function divides one numeric expression by another and returns the remainder? MOD function divides one numeric expression by another and returns the remainder.

What is the archtetype pattern, What is the archtetype/instance pattern? ...

What is the archtetype/instance pattern? The archetype/instance pattern happens when one entity tracks occurrences of another entity. A common example is the relationship among

DISTIBUTED DATABASE, Define physical image of a global relation at a site

Define physical image of a global relation at a site

What is de-normalization, What is De-normalization? De-normalization is...

What is De-normalization? De-normalization is the method of attempting to optimize the performance of a database by adding redundant data. It is sometimes essential because cur

What is a recursive relationship, What is a recursive relationship? Give an...

What is a recursive relationship? Give an example not used in the text. A recursive relationship is a relationship among an entity and itself. For example, given the entity PER

For known, What are the function of DBA?

What are the function of DBA?

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