Sergei, 16.05.2012 15:21, Sergei Golubchik wrote:
Okay. But is it correct? Can you try the following: 1st client: LOCK TABLE t1 WRITE; done
2nd client: SET READ_ONLY=1; hangs, as it's blocked by LOCK TABLE
1st client: INSERT t1 VALUES (1); insert succeeded.
1st client UNLOCK TABLES; 2nd completes the SET READ_ONLY
I'm not sure about it. It's basically a gotcha. "SET READ_ONLY will not flush transactional tables, but only if the statement uses no non-transactional tables.
Otherwise it'll flush all tables, transactional or not". One cannot always know if non-transactional tables are involved. Think of > log tables, tables used in triggers and stored routines.
Well i don't have an opinion of my own on that. Unfortunately i don't know that area well enough. Ok i started investigating and hope to come out with something better tomorrow. Regards HF