Mysql – “Field List” command in thesql processlist

MySQLprocess

In my processlist, I see a long running process. There is no query, just the command "Field List" with an empty info column. Its been waiting almost 20 minutes on a table meta data lock on an unspecified table.

Googling for "MySQL command Field List" hasn't returned anything useful. Can someone tell me what this command is trying to do and what may have caused it?

Using MySQL 5.6.35 on a CentOS 6 box

enter image description here

Best Answer

Look for any lines in the PROCESSLIST with a Time higher than that one (1188). It probably indicates the villain. The owner of both rows may give a clue.

A "metadata lock" involves something other than simple queries -- possibly ALTER TABLE or LOCK TABLES (as for mysqldump), etc.

"Field list" sounds like probing information_schema for the columns in the table, but I could be wrong.

Another possibility is that there is an open transaction that is waiting to be COMMITted. (And it is 'between' statements when the PROCESSLIST was grabbed.)

SHOW OPEN TABLES; might give another clue.