Performance how-tos

SQL Server performance guides: troubleshooting, execution plans, parallelism, blocking, implicit conversions, cardinality, Query Store, RCSI.

Identify blocking problems

How to recognise a blocking problem, set up the collection of blocked process reports, and send the files for analysis.

Refusing a query with ABORT_QUERY_EXECUTION

Using ABORT_QUERY_EXECUTION in SQL Server 2025 to block the execution of problem queries through Query Store Hints.

Fix cardinality estimator problems

How to identify and fix performance problems caused by the cardinality estimator.

Get an execution plan

Display the estimated (Ctrl+L) or actual (Ctrl+M) execution plan of a SQL Server query in SSMS, then save it to a .sqlplan file.

Fix implicit conversions

Find the implicit conversions that turn an index seek into a scan, from plan warnings and Extended Events, and fix them in ADO.NET and Entity Framework.

Optimize SQL queries

A method for optimizing SQL Server queries: IO and TIME statistics, Query Store, Extended Events, row-by-row processing, indexes, statistics.

Enable and use the Query Store

How to enable and use the Query Store to diagnose performance problems.

Read Committed Snapshot

How to enable the Read Committed Snapshot option in a SQL Server database

Troubleshoot performance problems

Troubleshoot a slow SQL Server one hypothesis at a time: waits, disks, configuration, expensive queries, blocking, missing indexes, statistics.

SQL Server Parallelism: Configuring MAXDOP and Cost Threshold

SQL Server’s default parallelism settings are often the cause of slowdowns. Configure MAXDOP and Cost Threshold (CTFP) to optimize your performance.