IllegalStateException: недопустимый pop() с несовпадающим JdbcValuesSourceProcessingState с пружинным JpaRepository<>JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 IllegalStateException: недопустимый pop() с несовпадающим JdbcValuesSourceProcessingState с пружинным JpaRepository<>

Сообщение Anonymous »

У меня есть репозиторий, реализованный с помощью CriteriaQuery, который загружает объект, являющийся частью структуры «родитель-потомок». Исключение Illegal pop() с несоответствующим JdbcValuesSourceProcessingState возникает нерегулярно, когда параллельно вызывается веб-сервис, который использует этот репозиторий и лениво загружает родительский элемент загруженного объекта рекурсивно в бизнес-логике. Стек вызовов исключения указывает на строку, в которую загружается родительский элемент. Веб-сервис REST помечен аннотацией @Transactional(readOnly = true, propagation = Propagation.REQUIRES_NEW). Все задействованные классы аннотируются как своего рода Компонент с областью действия по умолчанию и используют область @Transactional по умолчанию REQUIRED.
Быстрая загрузка родительских элементов не помогла решить проблему. проблема, а также не переписывание репозитория в JpaRepository. Но если я сделаю и то, и другое, проблема больше не будет воспроизводиться.
Техн. стек: Spring-Boot 3.1.4, Hibernate 6.4.1, Java 17, Docker.
Я не использую Uni и Quarkus, как в других подобных вопросах:Недопустимый pop() с не совпадающим JdbcValuesSourceProcessingState
Ошибка Hibernate 6 InvalidDataAccessApiUsageException: недопустимый pop() с не совпадающим JdbcValuesSourceProcessingState
Насколько я понимаю, это исключение вызвано использованием EntityManager непотокобезопасным способом. Поэтому я предполагаю, что использование решения JpaRepository, предназначенного для обеспечения потокобезопасности, должно решить проблему, и мне не нужно с нетерпением загружать родительские элементы.
Кто-нибудь может объяснить? почему это исключение возникает при потокобезопасном использовании диспетчера объектов?
Заранее спасибо,
Бен

Подробнее здесь: https://stackoverflow.com/questions/777 ... eprocessin
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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