Se till att du uttryckligen finish() varje exekverad förberedd procedur CALL innan du uttryckligen commit() transaktionen. T.ex.
$sth->finish;
$sth->commit();
Detta verkar vara ett fel för mig, med tanke på den typiska semantiken för finish() . Flera resultatuppsättningar, anropar more_results , etc. spelade ingen roll.
DBD 1.616, DBD::mysql 4.020 och MySQL 5.5.19.