What does the SQL Server error message Lazywriter: WARNING, couldn't find slot, 8/8, scanned 8 mean?

Neil Pike

March 4, 1999

1 Min Read
ITPro Today logo

A. Basically SQL Server is trying to wrote out "dirty" datato disk via the lazy writer thread that the CHECKPOINT process kicks off. Ithas been unable to find a free slot - which is basically a memory buffer. Thenumber of slots is set via the sp_configure "max lazywrite io"parameter and dictates the number of concurrent i/o's that this process isallowed to have.

The reason why it couldn't find a slot is either :-

  1. There has been an internal corruption that is stopping the lazy writerprocess from working properly. This is rare, but there was a known bug in SP3,fixed in SP4, that could cause this. If this were happening then you would seeother errors/AV's before this particular error appeared.

  2. The normal reason is just that the disk subsystem is too busy to processthe i/o requests. In which case look for non-SQL tasks that may be causingcontention on the same disk(s) - NT backups, file transfers, paging etc. Lookfor contending SQL processes on the same disk(s) - table scans, log file writesetc. You may need to move SQL devices to prevent contention. Alternatively youmay have the overrall level of i/o's that SQL is making too high - you may needto reduce the number of "max async io"'s that sp_configure allows.

In any event the message is not usually a problem - SQL will wait until itcan continue with the lazy write i/o's for as long as necessary.

(Under SQL 7 lazywrite io is dynamically tuned).

Sign up for the ITPro Today newsletter
Stay on top of the IT universe with commentary, news analysis, how-to's, and tips delivered to your inbox daily.

You May Also Like