Read Gather Streams and other parallel exchanges, inspect rows per thread and spill evidence, and relate exchange waits to actual work.
Operator Costs in an Execution Plan: Read Them Without Being Fooled
Interpret operator costs as estimates, compare actual rows and runtime evidence, and find expensive work without trusting plan percentages.
Priority Boost in SQL Server: Check It and Turn It Off
Priority boost sounds like a speed setting, but it can make a server slower. This post explains what the option does, checks it with a query that works when Management Studio doesn’t show it, prints the statements that turn it off with their undo, and explains why a restart is needed.
Check Index Fragmentation With Row Count in SQL Server
To check index fragmentation with row count, read sys.dm_db_index_physical_stats in SAMPLED mode and keep the page count and row count next to each percentage. This post builds a demo with three tables, lists every index, filters out the tiny ones, loops over every online database, and rebuilds the one index that matters.
SQL SERVER – Identifying and Fixing PREEMPTIVE_OS_RSFXDEVICEOPS Wait Type
I walked into a client engagement where I really got stuck with a very interesting scenario with a client with PREEMPTIVE_OS_RSFXDEVICEOPS Wait Type.
Memory-Optimized Files: List Logical and Physical Names
To list memory-optimized files, join sys.dm_db_xtp_checkpoint_files to sys.database_files. This post builds a small memory-optimized database, shows the container’s logical and physical name and counts its checkpoint files by type and state. It also explains why a container holds far more disk space than its data uses.
MAXDOP Query Hint: Override the Server Setting for One Query
The MAXDOP query hint sets how many processors one query can use, whatever the server setting says. This post proves it in both directions on a test table, shows that the hint can’t force a parallel plan and adds the database scoped setting between the two. Every step leaves the server setting alone.







