In a database, a deadlock is a situation that
occurs when two or more different database sessions have some data locked, and
each database session requests a lock on the data that another, different,
session has already locked. Because the sessions are waiting for each other,
nothing can get done, and the sessions just waste time instead. This scenario
where nothing happens because of sessions waiting indefinitely for each other
is known as deadlock.
Database deadlock example:
Suppose we have two database sessions called A
and B. Let’s say that session A requests and has a lock on some data – and
let’s call the data Y. And then session B has a lock on some data that we will
call Z. But now, lets say that session A needs a lock on data Z in order to run
another SQL statement, but that lock is currently held by session B. And, let’s
say that session B needs a lock on data Y, but that lock is currently held by
session A. This means that session B is waiting on session A’s lock and session
B is waiting for session A’s lock. And this is what deadlock is all about!
Social Plugin