Quartz aquires locks for a Scheduler from table QRTZ_LOCKS by using a SELECT ... FOR UPDATE query.
Since APPNG-2399, the JDBC Connection is set to autocommit=false.
This means, that up until then, the FOR UPDATE had no effect:
If autocommit is set to 1, the LOCK IN SHARE MODE and FOR UPDATE clauses have no effect.
But now, this leads to exceptions when trying to obtain a lock:
2021-09-06 17:02:32,827 DEBUG [http-nio-8080-exec-1] o.q.i.j.StdRowLockSemaphore : Lock 'TRIGGER_ACCESS' is desired by: http-nio-8080-exec-1 2021-09-06 17:02:32,827 DEBUG [http-nio-8080-exec-1] o.q.i.j.StdRowLockSemaphore : Lock 'TRIGGER_ACCESS' is being obtained: http-nio-8080-exec-1 2021-09-06 17:03:23,854 DEBUG [http-nio-8080-exec-1] o.q.i.j.StdRowLockSemaphore : Lock 'TRIGGER_ACCESS' was not obtained by: http-nio-8080-exec-1 - will try again. 2021-09-06 17:03:24,855 DEBUG [http-nio-8080-exec-1] o.q.i.j.StdRowLockSemaphore : Lock 'TRIGGER_ACCESS' is being obtained: http-nio-8080-exec-1 2021-09-06 17:04:15,866 DEBUG [http-nio-8080-exec-1] o.q.i.j.StdRowLockSemaphore : Lock 'TRIGGER_ACCESS' was not obtained by: http-nio-8080-exec-1 - will try again. 2021-09-06 17:04:16,866 DEBUG [http-nio-8080-exec-1] o.q.i.j.StdRowLockSemaphore : Lock 'TRIGGER_ACCESS' is being obtained: http-nio-8080-exec-1 2021-09-06 17:05:07,876 DEBUG [http-nio-8080-exec-1] o.q.i.j.StdRowLockSemaphore : Lock 'TRIGGER_ACCESS' was not obtained by: http-nio-8080-exec-1
- is caused by
-
APPNG-2399 HikariCPConfigurer should set autoCommit to false and allow empty/null validation query
- Done
- relates to
-
SCHED-54 Starting the application hangs on SQL Server
- Done
-
APPNG-2414 Rework autoCommit mode
- Done