// Clean up by releasing the uow and client session
if (uow.shouldResumeUnitOfWorkOnTransactionCompletion() && getTransactionController().canMergeUnitOfWork_impl(status)){
uow.synchronizeAndResume();
uow.setSynchronized(false);
}else{
uow.release();
// Release the session explicitly
if (getSession().isClientSession()) {
getSession().release();
}
}