Paul how to get rid of ants in the house S. Randal – In Recovery…

(the curious case of… used to be part of our bi-weekly newsletter but we decided to make it a regular how to get rid of ants in the house vinegar blog post instead so it can sometimes be more frequent. It covers something interesting one of us encountered when working how to get rid of ants in the house vinegar with a client, doing some testing, or were asked in a random question from the community.)

My friend bob dorr from CSS actually debunked this publicly how to get rid of ants in the house vinegar way back in 2007 in the blog post SQL server how to get rid of ants in the house vinegar urban legends discussed and also explains how some of the how to get rid of ants in the house vinegar wording in earlier versions of books online led to the how to get rid of ants in the house vinegar myth that SQL server uses one read/write thread per LUN or per data file. This myth leads people to believe that adding more data how to get rid of ants in the house vinegar files will increase I/O performance because more threads will be used to do how to get rid of ants in the house vinegar the writing. While it’s true that more data files can increase performance, depending on your I/O subsystem and the file/filegroup layout on that I/O subsystem, it’s nothing to do with that myth.

Any thread in SQL server that’s processing a query can issue an asynchronous read request. When a thread makes a call into the buffer pool how to get rid of ants in the house vinegar to get a pointer to a data file page copy how to get rid of ants in the house vinegar in memory, if the page isn’t already in memory then it has to issue a how to get rid of ants in the house vinegar read and then wait for the read to complete (called a physical I/O). On the other hand, if the page already is in memory, the thread pops back out to where it came from how to get rid of ants in the house vinegar (usually the access methods code) and that’s a logical I/O, with no accompanying wait. Pages can also be read in larger chunks by things how to get rid of ants in the house vinegar like index seek/scan readahead and DBCC CHECKDB‘s readahead.

(the curious case of… used to be part of our bi-weekly newsletter but we decided to make it a regular how to get rid of ants in the house vinegar blog post instead so it can sometimes be more frequent. It covers something interesting one of us encountered when working how to get rid of ants in the house vinegar with a client, doing some testing, or were asked in a random question from the community.)

Continuing on from my theme last time of using a how to get rid of ants in the house vinegar hex editor to find information, this morning I had an email from someone who was how to get rid of ants in the house vinegar trying to find an MDF file in a RAW disk how to get rid of ants in the house vinegar without a file system. Their client had suffered a catastrophic I/O subsystem failure and had ended up with disks that how to get rid of ants in the house vinegar could only be accessed using the RAW file system, and the only valid backups were from 2018.

• above is an screenshot of part of a DBCC PAGE how to get rid of ants in the house vinegar dump of the boot page for a database called salesdb. You can see that the name of the database starts how to get rid of ants in the house vinegar on the third line with ‘7300’, where the cursor is. This is the byte reversed unicode for lowercase s. So the name starts at offset 0x34 into the boot how to get rid of ants in the house vinegar page record, which itself starts at offset 0x60 into the page. So the name string starts at offset 0x94, or 148, bytes from the start of the boot page.

• search from the start of the raw disk for the how to get rid of ants in the house vinegar first occurrence of the pattern of bytes with the name how to get rid of ants in the house vinegar of the database, then go back 148 bytes and look to see if how to get rid of ants in the house vinegar you’ve found the boot page by checking the page ID how to get rid of ants in the house vinegar (the 6 bytes starting at offset 32 from the start how to get rid of ants in the house vinegar of the page; 4 byte page number, byte reversed; 2 byte file number, byte reversed). Now go back 73728 bytes in the disk and hopefully how to get rid of ants in the house vinegar that should be the file header page, page zero.

You could even build some automation to look for specific how to get rid of ants in the house vinegar allocation unit ids in the page header m_objid field (4 bytes, byte reversed at offset 24 in a page) and m_indexid field (2 bytes, byte reversed at offset 6 in a page), using the following code (from a disaster recovery case I worked on a few how to get rid of ants in the house vinegar years ago):

RELATED_POSTS