Hibernate поддерживает одну ревизию в нескольких транзакциях

Я использую Spring v2.5.5/Hibernate v3.6.3 вместе с Hibernate Envers для аудита изменений.

В настоящее время для каждой транзакции создается новая версия.

Но в моем приложении, когда я слишком часто выполняю очень небольшую единицу работы, например, 1 обновление на транзакцию, создается огромное количество записей аудита.

Можно ли настроить Envers для определенной небольшой единицы работы, чтобы создать одну ревизию для нескольких транзакций вместо 1 ревизии на транзакцию.


person Ambrish    schedule 29.07.2013    source источник


Ответы (1)


Envers будет генерировать ревизию каждый раз, чтобы сохранять или обновлять ваши сущности. Нет простого способа переопределить это. Envers великолепен, потому что его очень легко и быстро реализовать, но он также может очень быстро генерировать множество контрольных записей в зависимости от приложения. Возможно, вам придется изучить настраиваемую реализацию аудита с использованием триггеров или собственного кода ведения журнала, если Envers слишком шумный для вашего приложения.

person JQ-    schedule 31.07.2013
comment
Это окончательное решение, которое я мог бы сделать. Но нужно знать, возможно ли это через сам Envers. - person Ambrish; 31.07.2013
comment
К сожалению нет. Не без переопределения большей части основных функций Envers. Будет проще написать собственный журнал аудита, чтобы вы могли настроить, что является единицей работы и что регистрировать. - person JQ-; 31.07.2013