Searching for the solution to my previous question I've come across a weird fact - PDO prepare() with multi-queries does not work correctly inside a transaction. You get no warning, no exception, nothing - just silence and no commit/rollback.
Furthermore, you get no exception even if some of the queries except for the first one contain errors. Although if the first query contains an error you get an exception as expected.
If there is no transaction everything works fine.
If you put several prepare() statements (with a single query each one) inside a single transaction - again, everything works correctly.
I've read that MySQL does not support prepared statements with multi-queries, but the thing is that PDO by default does not deal with real MySQL prepared statements and only emulates them.
I've spent the whole day trying to find some document describing this problem but I failed.
Does anybody know if it's really a PDO bug?