Mysql с данными Spring jpa LockModeType.pessimistic_write дает исключение тайм-аута, когда 10 параллельных вызовов, и то же самое отлично работает со старой блокировкой. Обновление

старая система работает весной с некоторой конфигурацией базы данных, а lockmode.upgrade отлично работает с более чем 50 параллельными вызовами, тогда как тот же lockmode.upgrade или lockmodetype.pessimistic_write в микросервисе весенней загрузки дает ошибку для 10+ параллельных вызовов этой конкретной строки. мы используем тот же min,maxPoolSize и пробовали все свойства, как и в старом подходе. все еще получаются ошибки ниже.

      "message"":""Lock wait timeout exceeded; try restarting transaction""

блок кода

      @Lock(LockModeType.PESSIMISTIC_WRITE)
@Query("select so from employee so where so.id = :id")
@QueryHints({@QueryHint(name = "javax.persistence.lock.timeout", value = "-1")})
Optional<Employee> findByIdLocked(@Param("id") long id);

0 ответов

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