Lazy log truncation or why VLFs might stay at status 2 after log clearing

Posted on: October 16, 2018 3:52 pm

New VLF status value

Posted on: September 20, 2018 2:27 am

What is the FCB_REPLICA_SYNC spinlock?

Posted on: June 28, 2018 10:40 am

Read committed doesn’t guarantee much…

Posted on: April 17, 2018 12:05 pm

SQLskills SQL101: Why does my heap have a bunch of empty pages?

Posted on: January 24, 2018 11:11 am

SQLskills SQL101: How can a SELECT cause a database to change?

Posted on: May 31, 2017 12:28 pm

How are default column values stored?

Posted on: April 26, 2017 12:36 pm

Why PFS pages cannot be repaired

Posted on: March 5, 2017 4:15 pm

What are LOGMGR_RESERVE_APPEND waits?

Posted on: January 30, 2017 4:01 pm

Code to show rolled back transactions after a crash

Posted on: January 18, 2017 5:27 pm

Investigating the proportional fill algorithm

Posted on: October 4, 2016 4:58 am

When heap data pages become linked…

Posted on: September 22, 2016 1:32 pm

Code to analyze the transaction hierarchy in the log

Posted on: May 1, 2016 9:45 am

Data recovery: investigating weird SELECT failures around corruption

Posted on: December 3, 2015 12:20 pm

How would indexes on AG readable secondaries work?

Posted on: May 14, 2015 6:52 am

Incomplete checkpoints and recovery

Posted on: March 18, 2015 12:13 pm

Important change to VLF creation algorithm in SQL Server 2014

Posted on: January 6, 2015 3:27 pm

When is fast recovery used?

Posted on: September 15, 2014 1:40 pm

Are mixed pages removed by an index rebuild?

Posted on: June 10, 2014 10:15 am

Inside the Storage Engine: How are allocation unit IDs calculated?

Posted on: November 5, 2013 1:42 pm

Parent transaction ID in 2012 fn_dblog output

Posted on: October 4, 2012 9:15 pm

New script: When were the sp_configure options last changed?

Posted on: April 26, 2012 11:30 am

Where are sp_configure settings stored? Another reason to backup master…

Posted on: April 26, 2012 10:15 am

How are per-column modification counts tracked?

Posted on: March 13, 2012 11:30 am

How does DBCC CHECKDB WITH ESTIMATEONLY work?

Posted on: September 23, 2011 10:01 am

Initial VLF sequence numbers and default log file size

Posted on: September 13, 2011 11:52 am

Do changes to index keys really do in-place updates?

Posted on: February 25, 2011 9:22 am

A SQL Server DBA myth a day: (29/30) fixing heap fragmentation

Posted on: April 29, 2010 8:22 am

A SQL Server DBA myth a day: (25/30) fill factor

Posted on: April 25, 2010 9:51 am

A SQL Server DBA myth a day: (19/30) TRUNCATE TABLE is non-logged

Posted on: April 19, 2010 11:57 am

A SQL Server DBA myth a day: (6/30) three null bitmap myths

Posted on: April 6, 2010 8:28 am

Inside sys.dm_db_index_physical_stats

Posted on: March 9, 2010 10:18 am

Turning off the ghost cleanup task for a performance gain

Posted on: January 8, 2010 9:32 pm

Lock logging and fast recovery

Posted on: November 13, 2009 1:24 pm

What does checkpoint do for tempdb?

Posted on: October 7, 2009 11:49 am

How do checkpoints work and what gets logged

Posted on: September 27, 2009 9:28 pm

Memory: Large Pages and MemToLeave

Posted on: September 8, 2009 9:42 am

CHECKDB From Every Angle: How to tell if data purity checks will be run?

Posted on: August 19, 2009 11:04 am

Forwarding and forwarded records, and the back-pointer size

Posted on: August 10, 2009 10:53 am

Investigating locking and deadlocking with %%lockres%%

Posted on: May 30, 2009 3:41 pm

How expensive are page splits in terms of transaction log?

Posted on: May 12, 2009 5:50 pm

Misconceptions around null bitmap size

Posted on: May 4, 2009 2:47 pm

Performance bug: NOLOCK scans involving off-row LOB data

Posted on: April 30, 2009 5:34 pm

Misconceptions around TF 1118

Posted on: April 23, 2009 9:19 pm

FILESTREAM garbage collection

Posted on: April 21, 2009 9:29 pm

Inside the Storage Engine: More on the circular nature of the log

Posted on: April 21, 2009 12:42 am

Ghost cleanup redux

Posted on: March 19, 2009 10:44 am

FILESTREAM directory structure

Posted on: March 11, 2009 3:50 pm

Misconceptions around instant file initialization

Posted on: March 10, 2009 11:51 am

Search Engine Q&A #27: How does the storage engine find variable-length columns?

Posted on: March 1, 2009 10:42 am

TechNet Magazine: feature article on understanding logging and recovery

Posted on: January 16, 2009 10:01 am

Comprehensive tempdb blog post series

Posted on: January 16, 2009 9:24 am

Corruption bug that people are hitting: Msg 8914 – PFS free space

Posted on: November 6, 2008 11:51 pm

SQL Server 2008 Internals available to pre-order on Amazon.com

Posted on: October 19, 2008 9:54 am

How the on-disk data structures fit together

Posted on: September 8, 2008 4:31 am

Why does the buffer pool contain so many dirty tempdb pages?

Posted on: September 2, 2008 9:48 am

Inside the Storage Engine: What’s in the buffer pool?

Posted on: August 26, 2008 1:51 am

Search Engine Q&A #21: File header pages, and file header corruption

Posted on: July 25, 2008 2:10 pm

Search Engine Q&A #20: Boot pages, and boot page corruption

Posted on: July 11, 2008 12:01 am

Inside The Storage Engine: Does turning on page checksums discard any torn-page protection?

Posted on: March 21, 2008 11:23 pm

SQL Server 2008: New (undocumented) physical row locator function

Posted on: March 20, 2008 12:25 am

Inside The Storage Engine: GAM, SGAM, PFS and other allocation maps

Posted on: March 14, 2008 3:31 am

Inside The Storage Engine: sp_AllocationMetadata

Posted on: March 12, 2008 10:38 pm

More on how much transaction log a full backup includes

Posted on: January 31, 2008 8:01 am

Inside the Storage Engine: When do versioning tags get added?

Posted on: December 31, 2007 8:53 pm

Search Engine Q&A #10: When are pages from a truncated table reused?

Posted on: December 5, 2007 7:37 pm

Inside the Storage Engine: Ghost cleanup in depth

Posted on: October 8, 2007 4:24 pm

Inside the Storage Engine: Proof that records are not always physically stored in index key order

Posted on: October 4, 2007 3:29 pm

Inside the Storage Engine: IAM pages, IAM chains, and allocation units

Posted on: October 4, 2007 12:42 am

Inside the Storage Engine: Anatomy of an extent

Posted on: October 3, 2007 10:13 pm

Inside the Storage Engine: Anatomy of a page

Posted on: October 3, 2007 6:49 pm

Inside the Storage Engine: Using DBCC PAGE and DBCC IND to find out if page splits ever roll back

Posted on: October 1, 2007 1:53 am

Inside the Storage Engine: Anatomy of a record

Posted on: September 30, 2007 4:57 pm