My problem is simple, I want to rollback all the db changes that were caused by invocation of my service method. I have a problem with correct annotating. I'm not really sure where to put @Transactional and where should I set Propagation to REQUIRES_NEW or MANDATORY. I will paste a code that I wrote, which apart from the fact that SQLException is thrown does not rollback db changes.