исключение поиска в спящем режиме - объект был загружен, хотя он не был частью списка EntityInfo - PullRequest
0 голосов
/ 27 мая 2018

Поиск в Hibernate 5.5.2 при тестировании centos7 мы получаем это исключение из интеграционного теста (кроме centos7 вместо 6 мы ничего не меняли).

org.hibernate.search.exception.AssertionFailure: An entity got loaded even though it was not part of the EntityInfo list
    at org.hibernate.search.query.hibernate.impl.CriteriaObjectInitializer.initializeObjects(CriteriaObjectInitializer.java:95)
    at org.hibernate.search.query.hibernate.impl.QueryLoader.executeLoad(QueryLoader.java:88)
    at org.hibernate.search.query.hibernate.impl.AbstractLoader.load(AbstractLoader.java:58)
    at org.hibernate.search.query.hibernate.impl.FullTextQueryImpl.list(FullTextQueryImpl.java:201)
    at org.hibernate.search.jpa.impl.FullTextQueryImpl.getResultList(FullTextQueryImpl.java:153)

Есть ли у вас какие-либо идеи овызвать это?

1 Ответ

0 голосов
/ 20 января 2019

Причина, по которой это произошло в моем проекте:

  • Мы использовали иерархию классов - та же таблица, но разные дискриминаторы
  • БД была воссоздана, но индексы остались на диске
  • При поиске - в индексах была обнаружена старая сущность, которая имела тип (подкласс), отличный от того, что был в БД (потому что в БД записи создавались с нуля в другом порядке).

Таким образом, он нашел один тип сущности в индексах и другой тип сущности в БД и выдал эту ошибку.

...