OutOfMemoryError вызывает принятие транзакции JPA

Когда моя система получает сообщение "OutOfMemoryError: пространство кучи Java", она фиксирует транзакцию (отмечена org.apache.deltaspike.jpa.api.transaction.Transactional аннотация).

Как избежать этого и сделать откат вместо? "Обычные" исключения вызывают откат.

Моя реализация JPA - EclipseLink 2.6.4, а контейнер - Tomcat 8.5.33, работающий с Java 8.

1 ответ

Я решил это, поймав OutOfMemoryError и бросить его как RuntimeException, Это произвело надлежащий откат, сборку мусора (потому что был освобожден большой граф объектов), и служба могла продолжить работу.

Другие вопросы по тегам