From what you said, I guess that the "blocked" state persists for some time so the table is locked by a "slow query". You could turn on the "slow query log". In the log file, you could search for the command that works with the table in question. Every command locks all tables it works with at the beginning of its execution and unlocks them at the end. But there are also some execeptions with subqueries.
-- This message may have been cut off and the rest will only be shown to members. To become a member, click here --