Troubleshooting Guide: Error 3267 — Insufficient Resources to Create UMS Scheduler (SQL Server 2025)
Why This Error Happens
This error occurs when SQL Server’s User Mode Scheduler (UMS) cannot allocate a new scheduler during startup or under heavy connection load, typically due to insufficient system memory, exhausted worker thread pools, or a misconfigured max worker threads / affinity mask setting. It can also arise when the OS denies the SQL Server service account the memory pages or handles required to initialize schedulers, often because of restrictive Lock Pages in Memory policies or virtual memory exhaustion on Windows Server 2025 / Windows 11. In virtualized or containerized deployments, CPU core misreporting (NUMA/vCPU mismatch) can also trigger this failure.
Step-by-Step Resolution Guide
Step 1: Verify System Memory and Resource Availability
- Open Task Manager or Performance Monitor and check available physical memory and committed bytes.
- Ensure the host/VM has not hit memory ballooning limits (common in Hyper-V or Azure VM configurations).
- Run
DBCC MEMORYSTATUSin SSMS to inspect SQL Server’s internal memory allocation and scheduler count.
Step 2: Check and Adjust Max Worker Threads Configuration
- Open SQL Server Management Studio (SSMS) and run:
EXEC sp_configure 'max worker threads';
- If the value is manually set too low or too high relative to CPU count, reset it to 0 (auto-configure):
EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
EXEC sp_configure 'max worker threads', 0;
RECONFIGURE;
- Restart the SQL Server service for changes to take effect.
Step 3: Validate Affinity Mask and NUMA Configuration
- Navigate to SQL Server Configuration Manager → SQL Server service properties → Advanced tab.
- Confirm the
affinity maskandaffinity64 masksettings align with the actual number of logical processors exposed by Windows Server 2025 / Windows 11. - If using NUMA, verify node configuration matches hardware topology using:
SELECT * FROM sys.dm_os_nodes;
Step 4: Grant Required Memory and Security Permissions
- Open Local Security Policy (
secpol.msc) on the host machine. - Navigate to Local Policies → User Rights Assignment → Lock Pages in Memory.
- Ensure the SQL Server service account is added to this policy, then restart the SQL Server (MSSQLSERVER) service.
Step 5: Review SQL Server Error Log for Correlating Events
- Locate the error log at:
C:\Program Files\Microsoft SQL Server\MSSQL17.MSSQLSERVER\MSSQL\Log\ERRORLOG
- Search for preceding messages related to
Out of memory,WorkerPool, orNode configurationto pinpoint the exact resource constraint.
Alternative or Verification Steps
- After applying fixes, restart the SQL Server service and confirm successful scheduler initialization by running
SELECT * FROM sys.dm_os_schedulers;— all schedulers should show statusVISIBLE ONLINE. - If the issue persists, consider increasing the VM/host’s allocated vCPUs or physical RAM, or migrating the instance to a host with dedicated (non-shared) CPU resources.