After migrating our environnement to SQL Server 2016 this message started to appears in our SQL event Log with associated error in our application. It occurs during night when Batch processing data occurs heavily.
I understand that DBTS is related to Timestamp generation. We are using a rowversion column in all our tables to identify data modifcations through the day.
Our system is running on SQL Server 2016 SP1 running on Windows Server 2012 R2.
This problem never happens when we were in SQL Server 2008 R2.
First, thanks for your help on this issue. You're right, resource utilization are little high, but this has never caused any issue before and the load is exactly the same as when we were running on SQL Server 2008 R2.
This is a VM running under VMWare with 4 vCPU and 24 Gb of RAM.
When the issue occurs we can see:
- CPU utilization around 50%
- Batch/s around 600
- Transaction/s around 1300
- PLE running around 800
- Hard disk respond time < 10 ms in READ and <2 ms in Write
Maybe we can try to add 2 extra vCPU to the server and see if it resolves issue.
Is the text in the subject line the exact error message you see, or is it your own translation of a localised message in your language?
I ask, because I cannot find that message text in sys.messages. That would indicate that this is a message from an application, and in that case you would first need to check with the vendor/developer of that system.
However, there is a message in sys.messages which somewhat resemblent of what you posted: An internal error happened while generating a new DBTS for database "%.*ls". Please retry the operation. This messge appears to be new for SQL 2016; I don't find any message about @@DBTS in sys.messages on SQL 2014.