A loop that inserts one row at a time waits for the log on every row. Here is how to see it, and three ways to wait far less.
Scale Up or Scale Out: Signs Your Server Needs More Hardware
Decide when to scale up SQL Server by checking sustained CPU demand, memory pressure, storage latency, and whether query tuning comes first.
Reading Pending I/O Requests During a Storage Slowdown
Sample pending I/O requests during PAGEIOLATCH or WRITELOG stalls, map each request to a file, and share timed evidence.
Uneven Parallelism: Spotting Skewed Threads Behind CXPACKET Waits
Diagnose uneven parallelism by comparing CXPACKET and CXCONSUMER with per-thread row counts in plans and live query profiles.
sys.dm_os_waiting_tasks: Who Is Waiting Right Now and Why
sys.dm_os_waiting_tasks shows every task that waits right now, what it waits for and who is in the way. This post builds a three-session blocking chain on SQL Server 2025, reads the view, finds the head of the chain and names the locked table.
Tuning Step One: Capture a Wait Stats Baseline Before Changing Anything
Capture a wait stats baseline, compare two saved snapshots, reject reset intervals, and rank meaningful waits before changing settings.
SQL Server Wait Stats: eBook to Download on Kindle and My Answer to Free PDF Requests
SQL Server Wait Stats was my first book experiment. Here is how I answered readers who asked for a free PDF, and what the Kindle offer looked like in 2011. Prices and offers are from that time.







