How to fix Error 3611 on Windows Server 2025 / Windows 11

Troubleshooting Guide: SQL Server Error 3611 – “CPU Time Not Measured Under Fiber Mode”

Why This Error Happens

This message appears when SQL Server 2025 is configured to run in lightweight pooling mode (fiber mode) instead of the default thread mode. Because fibers operate on a shared thread rather than individual OS threads, the Windows scheduler cannot accurately attribute CPU time to individual SQL Server tasks, causing the engine to log this informational message during query execution statistics collection (SET STATISTICS TIME ON). This is not inherently a corruption or permissions issue—it is a direct side effect of the lightweight pooling configuration option being enabled, usually set to optimize for high-CPU, high-context-switch environments.

Step-by-Step Resolution Guide

Step 1: Confirm Fiber Mode is Enabled

  • Open SQL Server Management Studio (SSMS) and connect to the target instance.
  • Run the following query to check the current configuration:
EXEC sp_configure 'lightweight pooling';
  • If the run_value column returns 1, fiber mode is active and is the root cause of the message.

Step 2: Disable Lightweight Pooling (Recommended Fix)

  • Run the following T-SQL commands to turn off fiber mode:
EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
EXEC sp_configure 'lightweight pooling', 0;
RECONFIGURE;
  • This reverts SQL Server to standard thread-based scheduling, which restores full CPU time accounting accuracy.

Step 3: Restart the SQL Server Service

  • On Windows Server 2025 / Windows 11, open Services.msc.
  • Locate SQL Server (MSSQLSERVER) or your named instance (e.g., SQL Server (INSTANCENAME)).
  • Right-click and select Restart to apply the configuration change (lightweight pooling requires a service restart to take effect).
  • Alternatively, restart via PowerShell:
Restart-Service -Name 'MSSQLSERVER' -Force

Step 4: Suppress the Message if Fiber Mode Must Remain Active

  • If your workload specifically requires fiber mode (e.g., legacy COM+ or specific high-concurrency scenarios), you cannot eliminate the message without disabling fiber mode.
  • Instead, filter it out at the client/application level by ignoring Informational Severity 10 messages in your connection’s message handler, since Error 3611 is non-fatal and does not affect query results.

Step 5: Review SQL Server Error Log for Related Configuration Drift

  • Navigate to the default log path: C:\Program Files\Microsoft SQL Server\MSSQL17.MSSQLSERVER\MSSQL\Log\ERRORLOG.
  • Search for “lightweight pooling” entries to confirm when and how the setting was last changed, which helps identify if a deployment script or DBA process is re-enabling it unintentionally.

Alternative or Verification Steps

  • Verify the Fix: Re-run EXEC sp_configure 'lightweight pooling'; and confirm both config_value and run_value are set to 0. Then execute a test query with SET STATISTICS TIME ON; to confirm CPU time is now reported correctly instead of showing the “not measured” message.
  • Alternative: If disabling fiber mode is not feasible due to third-party application dependencies, suppress the specific message using Extended Events filtering on error_reported with error_number = 3611 to keep logs clean without altering server behavior.