spring - Quartz org.quartz.jobStore.selectWithLockSQL row lock -
i using quartz in clustered mode
i have row lock contention on db level caused excessive call :
org.quartz.jobstore.selectwithlocksql
"select * qrtz_locks sched_name = :"sys_b_0" , lock_name = :1 update"
i read quartz docs , still not clear me why above query executed.
what purpose of having row lock ?
regards
the locks table used quartz coordinating multiple schedulers when deployed in cluster mode. in cluster 1 node should fire trigger, lock used avoid multiple nodes acquiring same trigger.
from clustering section of documentation (http://quartz-scheduler.org/generated/2.2.1/html/qs-all/#page/quartz_scheduler_documentation_set%2fre-cls_cluster_configuration.html%23):
clustering works jdbc-jobstore (jobstoretx or jobstorecmt), , works having each node of cluster share same database. load-balancing occurs automatically, each node of cluster firing jobs can. when trigger's firing time occurs, first node acquire (by placing lock on it) node fire it.
Comments
Post a Comment