private function commitAll()
{
while (0 !== $this->_transactionNestingLevel) {
if (false === $this->autoCommit && 1 === $this->_transactionNestingLevel) {
// When in no auto-commit mode, the last nesting commit immediately starts a new transaction.
// Therefore we need to do the final commit here and then leave to avoid an infinite loop.
$this->commit();
return;
}
$this->commit();
}
}