Я работаю над сервисом Grails (транзакционным), который создает сложную доменную структуру и сохраняет ее.Логика работает, идентифицируя предыдущую структуру, затем создавая новую структуру и затем - если она проходит проверку - удаляя любую старую структуру и сохраняя новую.Мешают режимы Grails, потому что логика проверки выполняет запросы, которые в режиме AUTO сохраняют части структуры домена до ее завершения.
Я установил в DataSource.groovy:
hibernate {
flush.mode = "commit"
}
, потому что мне нужно (я думаю) отключить обработку AUTO, которая сбрасывает запрос.Без этого части моей новой структуры записываются постепенно во время процесса проверки, что заставляет Hibernate выдавать ужасные ошибки целостности.
Во время моего интеграционного теста - несмотря на настройку в DataSource.groovy - режим сброса все еще регистрируется как AUTO.Есть ли веская причина, почему Grails не должен уважать мою обстановку?