У нас есть старое микросервисное приложение Spring, которое использует планировщик Quartz. Quartz не работает автономно и не встроен в один из сервисов. Недавно мы провели нагрузочное тестирование приложения, и после определенной загрузки мы получили эту ошибку. Обертка: org.quartz.impl.jdbcjobstore.LockException: ошибка при получении блокировки строки базы данных: превышено время ожидания блокировки; попробуйте перезапустить транзакцию, перезапуск MySQL решил проблему, но в настоящее время мы пытаемся работать над исправлением, но не уверены, на стороне MySQL или на стороне Quartz.
Что касается планировщика Quartz, здесь нет специальной конфигурации и единственное, что определено в application.properties: Spring.quartz.job-store-type=jdbc.
На данный момент у меня попробовал добавить эти две строки в application.properties:
Код: Выделить всё
spring.quartz.properties.org.quartz.jobStore.acquireRetryCount=7 spring.quartz.properties.org.quartz.jobStore.acquireRetryDelay=2000
Код: Выделить всё
java.lang.NoSuchMethodException: No setter for property 'acquireRetryCount' [52 skipped] ... 50 common frames omitted Wrapped by: org.quartz.SchedulerException: JobStore class 'org.springframework.scheduling.quartz.LocalDataSourceJobStore' props could not be configured. ...
Спасибо!
Подробнее здесь: https://stackoverflow.com/questions/790 ... -scheduler