MetadataLock

Metadata is “the data about the data.” Anything that describes the database is metadata. Thus column names, database names, user names, version names, and most of the string results from SHOW are metadata.

만약, Lock Wait Timeout 내에 TxA 의 작업이 완료되면, TxB 의 작업도 성공적으로 수행될 수 있다.

// TxB finally gets the output
Query OK, 1 row affected (35.23 sec)

TxA 에서 대량의 Rows Update 가 일어나고 있는 동안 TxB 에서 delete 같은 DML 을 보내는 경우에도 TxB 가 아래와 같은 Lock Wait Timeout 예외를 받을 수 있다.

ERROR 1205 (HY000): Lock wait timeout exceeded; try restarting transaction

MySQL InnoDB Lock Wait Timeout 의 기본 값은 50sec 이다.