I want to get lock(PESSIMISTIC_WRITE) timeout in Spring Data JPA with PostgreSQL Server. I tried @QueryHints
but postgres seems to ignore it.
@QueryHints(value = {@QueryHint(name = "javax.persistence.lock.timeout", value = "0")})
@Lock(LockModeType.PESSIMISTIC_WRITE)
@Query("select s from Student s where s.email = :email")
Optional<Student> findWithForUpdate(@Param("email") String email);
With lock timeout value is 0, it appends NOWAIT with SELECT FOR UPDATE
and lock command immediately timeout if there is already lock present.
if I set some other value for javax.persistence.lock.timeout
lets say "20" it does not timeout.
question from:
https://stackoverflow.com/questions/65845760/how-to-get-lock-timeout-in-hibernate-with-postgresql-database 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…