Indeed, we could add a `NoActiveTransactionException` extending `ConnectionException`!

Although you can easily avoid the exception by always using:

    if ($transactionManager->isTransactionActive()) {
        $transaction = $transactionManager->getTopLevelTransaction();
        ...

So maybe it's not really worth it?