In NAV 2009 R2 Classic it was so easy to trace down what user was blocking other users. Simply running the session table and looking at the "Blocking User ID" field solved this problem.
We are upgrading to NAV 2016 next week and we have run into a few blocking scenarios that I do not know how to trace things to the source. One I figrued out had to do with the change log since all non user processes (I think this started in NAV 2013) use the change log there is a lot more activity. I was able to turn off the change log on a few tables to solve that problem.
Now for a few hours we were unable to post shipments as the we kept getting the message: “The operation could not complete because a record in the Sales Shipment Header table was locked by another user. Please retry the activity.” and at the same time I could not get into the debugger as I go the message "The operation could not complete because a record in the Add-In table was locked by another user. Please retry the activity"
We might have had a vendor debugging at that time but he is saying he was not in there then. So my question is in NAV 2016 how can I see the source of the blocking so I can know what/who is causing the problem?
0
Answers
What I do is this: I check in SQL Server what resources are blocked and by what SPID (always results the user of the Service tier ...sigh...). Then I check what other resources that SPID is blocking. And knowing very well the processes that are running for that customer, I have a good idea what the process is that is blocking. But still not the user...
Trick from the DBA from hell: kill the SPID that is blocking. The user of that spid will probably come to you complaining his session crashed
No PM,please use the forum. || May the <SOLVED>-attribute be in your title!