TL;DR
-
FLUSH TABLES WITH READ LOCKは「今まさに実行中のクエリ」と競合する- メタデータロックと違って「生きているトランザクション」ではなくて「今まさに実行中のクエリ」とだけ
-
WITH READ LOCKという名前ではあれどFLUSH TABLESなのでSELECTとも競合する
-
FLUSH TABLES WITH READ LOCKは先に全体にGLOBAL read lockを置いてから1つずつテーブルをFLUSHする -
FLUSH TABLES WITH READ LOCKをタイムアウトさせてもセッションを閉じない限りFLUSH待ちロックは解放されない
FLUSH TABLES WITH READ LOCK は実行中のクエリと競合する。
t1, t2, …