The Performance Schema maintains metadata_locks  table content as follows, using the LOCK_STATUS column to indicate the status of each lock: 

•When a metadata lock is requested and obtained immediately, a row with a status of GRANTED  is inserted. 

•When a metadata lock is requested and not obtained immediately, a row with a status of PENDING  is inserted. 

•When a metadata lock previously requested is granted, its row status is updated to GRANTED . 

•When a metadata lock is released, its row is deleted. 

•When a pending lock request is canceled by the deadlock detector to break a deadlock ( ER_LOCK_DEADLOCK ), its row status is updated from PENDING  to VICTIM . 

•When a pending lock request times out ( ER_LOCK_WAIT_TIMEOUT ), its row status is updated from PENDING  to TIMEOUT . 

•When granted lock or pending lock request is killed, its row status is updated from GRANTED  or PENDING to KILLED . 

•The VICTIM , TIMEOUT , and KILLED  status values are brief and signify that the lock row is about to be deleted. 

•The PRE_ACQUIRE_NOTIFY  and POST_RELEASE_NOTIFY  status values are brief and signify that the metadata locking subsubsystem is notifying interested storage engines while entering lock acquisition operations or leaving lock release operations. 

The metadata_locks  table has these columns: 

• OBJECT_TYPE 

The type of lock used in the metadata lock subsystem. The value is one of GLOBAL , SCHEMA , TABLE , FUNCTION , PROCEDURE , TRIGGER  (currently unused), EVENT , COMMIT , USER LEVEL LOCK , TABLESPACE , or LOCKING SERVICE . 

A value of USER LEVEL LOCK  indicates a lock acquired with GET_LOCK() . A value of LOCKING SERVICE  indicates a lock acquired with the locking service described in Section 5.6.9.1, “The Locking Service” . 

• OBJECT_SCHEMA 

The schema that contains the object. 

• OBJECT_NAME 

The name of the instrumented object. 

• OBJECT_INSTANCE_BEGIN 

The address in memory of the instrumented object. 

• LOCK_TYPE 

The lock type from the metadata lock subsystem. The value is one of INTENTION_EXCLUSIVE , SHARED , SHARED_HIGH_PRIO , SHARED_READ , SHARED_WRITE , SHARED_UPGRADABLE , SHARED_NO_WRITE , SHARED_NO_READ_WRITE , or EXCLUSIVE . 

