Types of Intention Mode Locks
An intention lock is something when a lower granularity object needs a lock and then the lock manager places a lock on the higher granularity object.
There are three types of Intention-mode locks:
- If a node is locked in intention-shared (IS) mode, then explicit locking is done at a lower level, but only with shared mode locks.
- If a node is locked in intention-exclusive (IX)mode, then explicit locking is done at a lower level, but only with exclusive mode locks.
- If a node is locked in Shared and Intensive –exclusive (SIX) mode lock, then subtree rooted by that node is locked explicitly in shared mode, and that explicit locking is done at a lower level with exclusive-mode locks.
The Compatibility-Function for these lock modes is :
S | X | IS | IX | SIX | |
S | T | T | T | T | F |
X | T | T | F | F | F |
IS | T | F | T | F | F |
IX | T | F | F | F | F |
SIX | F | F | F | F | F |
Here,
S = Shared Lock
X =Exclusive Lock
IS = Intention_shared Lock
IX = Intention-Shared lock
SIX =Shared and Intention-Exclusive
And,
T = true
F = false.
The above is said to be the ‘Lock-Compatibility Matrix’.
Reference link