Ujistěte se, že jste explicitně finish() každá provedená připravená procedura CALL před tím, než explicitně commit() transakce. Např.
$sth->finish;
$sth->commit();
Zdá se mi to jako chyba, vzhledem k typické sémantice finish() . Více sad výsledků, volání more_results , atd. nezáleželo.
DBD 1.616, DBD::mysql 4.020 a MySQL 5.5.19.