Troubleshooting Guide: SQL Server Error 5848 — Hot-Added CPU Notification
Why This Error Happens
This message is triggered when the underlying hardware or hypervisor performs a hot-add CPU operation on a system where SQL Server is running, which SQL Server detects and logs via its NUMA-aware scheduler. It is not actually an error condition but rather an informational event (Event ID 5848) confirming that a new physical CPU was dynamically added to a specific NUMA node and mapped to a logical CPU ID. This typically occurs in virtualized environments (Hyper-V, VMware) or on physical servers that support hot-plug CPU hardware, especially when a VM administrator increases vCPU allocation while the guest OS and SQL Server instance remain online.
Step-by-Step Resolution Guide
Step 1: Confirm the Message Is Informational, Not an Error
- Check the SQL Server Error Log or Windows Event Viewer (Application log, source “MSSQLSERVER”) for Event ID 5848.
- Verify the full message text includes “This is an informational message only. No user action is required.” — this confirms no corrective action is needed.
- Cross-reference the timestamp with any recent hardware/VM configuration changes (e.g., vCPU hot-add performed by a hypervisor admin).
Step 2: Validate Hot-Add CPU Was Intentional
- Open Hyper-V Manager or your virtualization platform’s console and check the VM settings under Processor configuration to confirm whether “Enable Processor compatibility” or hot-add CPU was deliberately enabled.
- On Windows Server 2025 host, run the following in PowerShell to confirm current vCPU count matches expected allocation:
Get-VM -Name "<VMName>" | Select ProcessorCount
- If the hot-add was unauthorized or unexpected, coordinate with your infrastructure/virtualization team to confirm change management records.
Step 3: Verify SQL Server Recognizes the New CPU Correctly
- Run the following T-SQL query to confirm SQL Server has updated its scheduler count and NUMA node mapping:
SELECT cpu_id, scheduler_id, parent_node_id, status
FROM sys.dm_os_schedulers
WHERE status = 'VISIBLE ONLINE';
- Compare the output against
sys.dm_os_sys_infoto ensurecpu_countmatches the expected total after the hot-add:
SELECT cpu_count, hyperthread_ratio, socket_count, numa_node_count
FROM sys.dm_os_sys_info;
Step 4: Restart SQL Server Only If NUMA Mapping Appears Inconsistent
- If
sys.dm_os_schedulersorsys.dm_os_sys_infoshows mismatched or orphaned NUMA node data, schedule a restart of the SQL Server service during a maintenance window:
net stop MSSQLSERVER
net start MSSQLSERVER
- This forces SQL Server to fully re-enumerate all CPUs and NUMA nodes from scratch rather than relying on the dynamic hot-add detection logic.
Alternative or Verification Steps
- Verify the fix: Re-run
SELECT cpu_count, numa_node_count FROM sys.dm_os_sys_info;after any restart and confirm the values match the host’s current vCPU/NUMA configuration reported in Task Manager (Performance tab) orGet-VMoutput. - Alternative: If hot-add CPU events are frequent and generating log noise, consider disabling CPU hot-add in the VM’s hardware configuration (if dynamic scaling isn’t required) to reduce unnecessary Event ID 5848 entries in the SQL Server Error Log.