Я снимал часть документации Grails и нашел этот бит о методе read() в Grails. Если я правильно понимаю это, вы можете вытащить версию "только для чтения" из базы данных, которая будет сохранена только при явном вызове save(). Мне кажется, что вы должны использовать вызов read() всякий раз, когда у вас есть объект, который вы не ожидаете изменить.
Но почему бы вам просто не использовать вызов read()? Поскольку объект будет изменен на разрешения на чтение и запись, если вы все равно save(), не было бы безопаснее просто читать в объекте, а не получать его?