Sql-server – Buffer Latch Type 3 and Failed To Generate Checkpoint Errors

checkpointlatchsql server

enter image description hereI am getting this in the log file: Time-out occurred while waiting for buffer latch type 3 for page (1:4660738) database ID 5

The database is in Full mode & logs are backing up every 15 minutes like normal. I was unable to perform a a full backup (get the latch error).

After each log is backed up I am seeing: One or more recovery units belonging to database 'X' failed to generate a checkpoint

I ran a Check DB with no errors (60GB DB)
There are disk errors being reported, running on SAN with SSD's
User were able to continue working as normal.

When they restarted SQL Server, all returned to normal without either error?
The recovery did roll thru 80k+ trans on startup

Other things I should have looked at?
Ideas why it was happening?

I am getting this in the log file:

Time-out occurred while waiting for buffer latch type 3 for page (1:4660738) database ID 5

The database is in Full mode & logs are backing up every 15 minutes like normal. I was unable to perform a a full backup (get the latch error).

After each log is backed up I am seeing: One or more recovery units belonging to database 'X' failed to generate a checkpoint

I ran a Check DB with no errors (60 GB database).
There are disk errors being reported, running on SAN with SSD's.
User were able to continue working as normal.

When they restarted the SQL Server, everything returned to normal without either errors?
The recovery did roll thru 80k+ trans on startup.

Other things I should have looked at?
Ideas why it was happening?

Here is the Startup log after issue (lightly edited).

Recovery is complete. This is an informational message only. No user action is required.

CHECKDB for database 'XX' finished without errors on 2020-09-05 00:00:00.900 (local time). This is an informational message only; no user action is required.

Recovery completed for database XX (database ID 5) in 28 second(s) (analysis 9215 ms redo 16848 ms undo 0 ms.) This is an informational message only. No user action is required.

Recovery is writing a checkpoint in database 'XX' (5). This is an informational message only. No user action is required.

0 transactions rolled back in database 'XX' (5:0). This is an informational message only. No user action is required.

80636 transactions rolled forward in database 'XX' (5:0). This is an informational message only. No user action is required.

Using 'xpsqlbot.dll' version '2015.131.5026' to execute extended stored procedure 'xp_qv'. This is an informational message only; no user action is required.

Attempting to load library 'xpsqlbot.dll' into memory. This is an informational message only. No user action is required.

Using 'xpstar.dll' version '2015.131.5026' to execute extended stored procedure 'xp_instance_regread'. This is an informational message only; no user action is required.

Attempting to load library 'xpstar.dll' into memory. This is an informational message only. No user action is required.

CHECKDB for database 'msdb' finished without errors on 2020-09-06 02:00:02.463 (local time). This is an informational message only; no user action is required.

Service Broker manager has started.

The Database Mirroring endpoint is in disabled or stopped state.

The Service Broker endpoint is in disabled or stopped state.

Starting up database 'tempdb'.

The SQL Server Network Interface library successfully registered the Service Principal Name (SPN) [ MSSQLSvc/XX.XX.org:1433 ] for the SQL Server service.

The SQL Server Network Interface library successfully registered the Service Principal Name (SPN) [ MSSQLSvc/XX.XX.org ] for the SQL Server service.

SQL Server is attempting to register a Service Principal Name (SPN) for the SQL Server service. Kerberos authentication will not be possible until a SPN is registered for the SQL Server service. This is an informational message. No user action is required.

SQL Server is now ready for client connections. This is an informational message; no user action is required.

Dedicated admin connection support was established for listening locally on port 1434.

Server is listening on [ 'any' 1433].

A self-generated certificate was successfully loaded for encryption.

Clearing tempdb database.

Polybase feature disabled.

CHECKDB for database 'model' finished without errors on 2020-09-06 02:00:02.210 (local time). This is an informational message only; no user action is required.

Recovery is writing a checkpoint in database 'msdb' (4). This is an informational message only. No user action is required.

Starting up database 'model'.

The resource database build version is 13.00.5102. This is an informational message only. No user action is required.

Starting up database 'XX'.

Starting up database 'mssqlsystemresource'.

Starting up database 'msdb'.

Common language runtime (CLR) functionality initialized using CLR version v4.0.30319 from C:\Windows\Microsoft.NET\Framework64\v4.0.30319.

SQL Trace ID 1 was started by login "sa".

SQL Server Audit has started the audits. This is an informational message. No user action is required.

SQL Server Audit is starting the audits. This is an informational message. No user action is required.

CHECKDB for database 'master' finished without errors on 2020-09-06 02:00:01.420 (local time). This is an informational message only; no user action is required.

CLR version v4.0.30319 loaded.

In-Memory OLTP initialized on lowend machine.

Starting up database 'master'.

Query Store settings initialized with enabled = 1

Database Instant File Initialization: enabled. For security and performance considerations see the topic 'Database Instant File Initialization' in SQL Server Books Online. This is an informational message only. No user action is required.

Using dynamic lock allocation. Initial allocation of 2500 Lock blocks and 5000 Lock Owner blocks per node. This is an informational message only. No user action is required.

Node configuration: node 0: CPU mask: 0x000000000000000f:0 Active CPU mask: 0x000000000000000f:0. This message provides a description of the NUMA configuration for this computer. This is an informational message only. No user action is required.

Buffer pool extension is already disabled. No action is necessary.

Default collation: SQL_Latin1_General_CP1_CI_AS (us_english 1033)

Using conventional memory in the memory manager.

Detected 16383 MB of RAM. This is an informational message; no user action is required.

SQL Server is starting at normal priority base (=7). This is an informational message only. No user action is required.

SQL Server detected 2 sockets with 2 cores per socket and 2 logical processors per socket 4 total logical processors; using 4 logical processors based on SQL Server licensing. This is an informational message; no user action is required.

Command Line Startup Parameters: -s "MSSQLSERVER"

Registry startup parameters: -d D:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\master.mdf -e D:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Log\ERRORLOG -l D:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\mastlog.ldf

Authentication mode is MIXED.

System Manufacturer: 'VMware Inc.' System Model: 'VMware Virtual Platform'.

Microsoft SQL Server 2016 (SP2-GDR) (KB4532097) – 13.0.5102.14 (X64) Dec 31 2019 22:39:35 Copyright (c) Microsoft Corporation Standard Edition (64-bit) on Windows Server 2012 R2 Datacenter 6.3 (Build 9600: ) (Hypervisor)

Best Answer

We have had a similar problem : 2019 Enterprise - NOLOCK without NOLOCK, page latch time-out on tempdb and finally a dump and after many manipulations, we thinks that is an incompatible problem with some specific hardware... Describe which hardware do you use please.