Это может быть ваш случай, пожалуйста, проверьте мой ответ на другой пост.
https://stackoverflow.com/a/40513787/6234057
У меня было то же исключение Hibernate.
После некоторой отладки я понял, что проблема вызвана дочерними записями «Сирота».
Как многие жалуются, когда ищут запись, она существует.
Я понял, что проблема не в том, что запись существует, а в спящем режиме, когда ее нет в таблице, а в том, что это дочерние записи сирот.
Записи, которые имеют отношение к несуществующим родителям!
Что я сделал, так это нахожу ссылки Внешнего ключа, соответствующие Таблице, связанной с Бином.
Чтобы найти ссылки на внешние ключи в SQL-разработчике
1.Сохранить приведенный ниже код XML в файл (fk_reference.xml)
<items>
<item type="editor" node="TableNode" vertical="true">
<title><![CDATA[FK References]]></title>
<query>
<sql>
<![CDATA[select a.owner,
a.table_name,
a.constraint_name,
a.status
from all_constraints a
where a.constraint_type = 'R'
and exists(
select 1
from all_constraints
where constraint_name=a.r_constraint_name
and constraint_type in ('P', 'U')
and table_name = :OBJECT_NAME
and owner = :OBJECT_OWNER)
order by table_name, constraint_name]]>
</sql>
</query>
</item>
2.Добавить расширение USER DEFINED в SQL Developer
Чтобы найти записи о сиротах во всех указанных таблицах
выбрать * из CHILD_TABLE
где FOREIGNKEY не указан (выберите PRIMARYKEY из PARENT_TABLE);
Удалите эти потерянные записи, зафиксируйте изменения и перезапустите сервер, если требуется.
Это решило мое исключение. Вы можете попробовать то же самое.