Guru Guide — To Sql Server Architecture And Internals.pdf
Here’s a story that teaches a real-world lesson from those internals. The Case of the Midnight Slowdown
Index stats were stale. The query optimizer thought the scan was cheaper because it didn’t know the table had grown massively since the last stats update. Guru Guide To Sql Server Architecture And Internals.pdf
The buffer pool is a shared resource. Morning report’s KEEP hints or large scans polluted the cache. Here’s a story that teaches a real-world lesson
He looked at sys.dm_tran_database_transactions during the ETL. One transaction had an old database_transaction_begin_time from 3 hours ago—an open transaction from a developer’s BEGIN TRAN in SSMS that was never committed or rolled back. The buffer pool is a shared resource
The transaction log is a circular log. It can’t reuse space if any active transaction holds onto a VLFL (virtual log file) even if it’s old.
He ran: