Moved logic that creates an AuditLog from afterTransactionCompletion to
beforeTransactionCompletion and added a unit test to prove that an
auditlog is not created in case of a rollback or if the commit fails