@Audited руины запросаJAVA

Программисты JAVA общаются здесь
Anonymous
@Audited руины запроса

Сообщение Anonymous »

Я впервые добавляю Hibernate Envers в новый модуль с новыми объектами, и как только я аннотирую указанные объекты с помощью @Audited, все мои запросы больше не могут получать результаты. Существуют все таблицы _AUD и простой

Код: Выделить всё

entityManager.find
может извлекать объекты по идентификатору.
Упрощенный объект с запросом:

Код: Выделить всё

@NamedQuery(name = "queryA",
query = "SELECT u FROM A u "
+ "WHERE u.businessKey=:key")
@Entity
@Audited
@Table(name = "A")
public class A {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "ID", unique = true, nullable = false)
private long id;
@Column(name = "BUSINESS_KEY", nullable = false)
private long businessKey;
...
}
При выполнении запроса A метод getResultList() возвращает пустой результат. Когда я удаляю @Audited, queryA возвращает ожидаемый список объектов. Когда ведение журнала активировано, запрос sql выглядит нормально:

Код: Выделить всё

    select
u1_0.ID,
u1_0.BUSINESS_KEY
from
A u1_0
where
u1_0.BUSINESS_KEY=?;
Выполнение указанного запроса непосредственно в базе данных либо впоследствии, либо во время остановки в точке останова показывает мне ожидаемые записи таблицы. Изменение запроса на id вместо businessKey ДЕЙСТВИТЕЛЬНО дает результаты.
Что происходит? Как включение аудита может привести к тому, что спящий режим не сможет выполнять простые запросы?
Кстати, Hibernate версии 6.2.46.

Вернуться в «JAVA»