I have a controller, inside the controller I pass the Domain Object to a service to check a version and some other logic. My controller/service call is `message = service.updateExisting(domainObj, un, other)`. 

When I run domainObj.version in the controller I get a version lower than when I run it in the service. Also the changes are persisted regardless of the checks I do in the updateExisting method.

I have also tried setting `grails.gorm.autoFlush = false` in the Config.groovy and `def transactional=false` in the service neither seems to help. can anyone see what I am missing? 

I also tried `static transactional=false` in the controller and in the service