Thanks for the explanation.
> I have never seen monLocks *cause* problems that syslocks would not have (and unfortunately,
> attempts to use syslocks instead rather proved it).
We're using 15.7 SP134 on a machine with 24 engines (underlying machine is 24 cores x 2threads) with 512Gb RAM.
and its only when more than 200,000 locks do we get this.
Here's how we're comparing the difference between syslocks and monLocks.
select @time = getdate()
select @size1 = count(*) from master..syslocks
select @timetaken1 = datediff(ms, @time, getdate())
select @time = getdate()
select @size2 = count(*) from master..monLocks
select @timetaken2 = datediff(ms, @time, getdate())
print "syslocks %1! %2! monLocks %3! %4!", @size1, @timetaken1, @size2, @timetaken2
I've altered our monitoring process now to stop using monLocks so will see over the next day if this helps.
Note: we're haven't seen this before on earlier versions so we may have something mis-configured.
Also, I can run more tests for you if you need me to provide more diagnostics.Let me know what you'd like me to test.