Update Statistics on a Columnstore index failed

SQL Server relies upon good, up-to-date statistics when creating query execution plans. Out-of-date statistics can cause queries to run slowly, or suddenly start consuming far more resources than is typically required. Columnstore statistics are quite…

Transaction Log Structure

Intro This post shows the internal logical structure of the SQL Server Transaction Log. The details here target SQL Server 2000 to 2017. Note that SQL Server 2019 will likely include Accelerated Database Recovery, aka…

VLF truncation in SIMPLE recovery model

I recently presented a session on log file management where I discussed monitoring and managing the logical segments of the transaction log known as Virtual Log Files, or VLFs. A great question came up about…

I’m Sorry, I Can’t Let You Expand That Log File, Dave!

Thanks to all the wonderful people who attended my recent presentation on Transaction Log File Management at the Winnipeg SQL Server User Group Meeting! I had a lot of fun, and hope you found the…

Detect Databases with High VLF Count

Introduction Broadly speaking, the recovery process for SQL Server consists of reading the transaction log, rolling forward committed transactions, and rolling back uncommitted transactions, since the last checkpoint. The SQL Server Transaction Log is segmented…