The Curious Case of… the BULK_OPERATION lock during a heap NOLOCK scan
(The Curious Case of… used to be part of our bi-weekly newsletter but we decided to make it a regular blog post instead so it can sometimes be more
(The Curious Case of… used to be part of our bi-weekly newsletter but we decided to make it a regular blog post instead so it can sometimes be more
(The Curious Case of… used to be part of our bi-weekly newsletter but we decided to make it a regular blog post instead so it can sometimes be more
(The Curious Case of… used to be part of our bi-weekly newsletter but we decided to make it a regular blog post instead so it can sometimes be more
(The Curious Case of… used to be part of our bi-weekly newsletter but we decided to make it a regular blog post instead so it can sometimes be more
(The Curious Case of… used to be part of our bi-weekly newsletter but we decided to make it a regular blog post instead so it can sometimes be more
At least since I started working on the SQL Server team (just after 7.0 shipped) and since then there have only been two VLF status
SQLskills has an ongoing initiative to blog about basic topics, which we’re calling SQL101. We’re all blogging about things that we often see done incorrectly, technologies used the wrong
As Kimberly blogged about earlier this year, SQLskills has an ongoing initiative to blog about basic topics, which we’re calling SQL101. We’re all blogging about things that we often see
An interesting question came up in class yesterday: how is a default column value stored, and what if some rows exist when a column is added and then
As Kimberly blogged about recently, SQLskills is embarking on a new initiative to blog about basic topics, which we’re calling SQL101. We’ll all be blogging about things that
Last week there was a short discussion on Twitter about why PFS pages (damaged header, not individual PFS bytes) can’t be repaired (prompted by a
This is something that came up recently on the Microsoft Certified Master DL, and is something I discuss in our IEPTO1 class because of the
The pages at each level of an index are linked together in a doubly-linked list (using the m_nextPage and m_prevPage fields in their page headers)
An interesting corruption problem cropped up on the MCM distribution list yesterday and after I figured it out, I thought it would make a good
Back in 2009 I blogged about how checkpoints work (see How do checkpoints work and what gets logged) and I received a question in email
This is a question that came up this morning during our IE1 class that I thought would make an interesting blog post as there are
It’s been a long time since I’ve written a post about pure internals, but every so often I get asked how an allocation unit ID
In my previous post I explained how the sp_configure settings are stored in a special page in the master database called the CONFIG block. Sometimes
Earlier today I blogged on our SQL Server Pro magazine blog about false-alarm corruptions you will *definitely* see if you restore a backup of the
Earlier today there was a question on the MVP mailing list asking how SQL Server keeps track of per-column modification counts. From 2008 onwards, the
We're teaching on-site with a financial client in New York for two weeks and in a session this morning on log file architecture I was
(Check out my Pluralsight online training course: SQL Server: Index Fragmentation Internals, Analysis, and Solutions.) Back in April I kicked off a survey where I asked
In this survey I'd like you to run some code and then send me the results (and I'm sure someone will put together a PowerShell
There was an interesting discussion on Twitter this morning (started by my good friend Erin Stellato (blog|twitter)) about in-place updates for index records where the
(Look in the Misconceptions blog category for the rest of the month’s posts and check out the 60-page PDF with all the myths and misconceptions
The very worst piece of advice I ever saw on the Internet was in response to someone asking on a SQL newsgroup ‘how can I
One of the things I love teaching is how the transaction log and logging/recovery work. I presented a session on this at both PASS and
(Check out my Pluralsight online training course: SQL Server: Logging, Recovery, and the Transaction Log.) This is a blog post I’ve been meaning to do
Here’s a question that came up recently: if I’ve upgraded a database from SQL 2000 or before, how can I tell if the data purity
This is a question that comes up every so often, most recently this morning while teaching a private class (and Kimberly's teaching now): how large
Page splits are always thought of as expensive, but just how bad are they? In this post I want to create an example to show
This is a quick follow-on from my Misconceptions around null bitmap size post. The null bitmap is *always* present in a data record (i.e. records in
I'm starting a new series called 'Misconceptions' – a series of short posts that debunk some of the many myths and misconceptions that exist about
[Edit 2016: This trace flag is required in all version of SQL Server up to and including SQL Server 2014. Every instance of SQL Server
Every so often (well, ok, very frequently) my internal list of ‘I must blog about that’ gets too big and I have an almost
(Yes, Kimberly's lecturing again…) Here's something that I've seen crop up a lot recently on corruption forums: Server: Msg 602, Level 21, State 50, Line
A thread cropped up on SQLServerCentral involving IAM chain corruption (see Inside the Storage Engine: IAM pages, IAM chains, and allocation units for details of IAM
Way back at the start of me blogging here I wrote a comprehensive description of ghost records and the ghost cleanup process – see Inside
After writing the FILESTREAM whitepaper for Microsoft, I’ve had lots of questions about the structure of the FILESTREAM data container. The FILESTREAM data container is
This question came up in a class I was teaching a few weeks ago: given that the variable-length column offset array in a record only
In SQL Server 2000 and before, the symptoms of database corruption would occasionally manifest themselves as asserts, such as: SQL Server Assertion: File: <recbase.cpp>, line=1378
Wow – today is all about new content. As if I haven't already blogged about enough stuff to keep you reading through next week, the
(Posted with permission of the dev team) Here's an interesting bug that people are hitting. I found out about this while here in Barcelona at
In the last few classes I've taught, we've discussed the on-disk structures where everything is stored in a database, and I've also been asked privately
Every so often I’ll see posts on the various data corruption forums discussing causes of corruption. In this post I want to debunk some of
This is a quickie in response to a blog comment from my previous post on instant initialization: How to tell if you have instant initialization
Following on from my previous post on boot pages and boot page corruption, I’ve been asked about file header pages – and I was already
Now that I’ve done all the business-related blog posts, back to the good stuff to stop people complaining! Something that’s cropped up a few
With training and consulting from SQLskills, you’ll be able to solve big problems, elevate your team’s capacity, and take control of your data career.