Writelog, logbuffer and logmgr_reserve_append is about the logfile. In general a high value means that the logfiles are not performing well, and that is a serious problem because that causes the SQL Server to be slow.
Why? because everything you insert into a table has to be written to the logfile physically before you can proceed (forget about delayed durability that is a topic that will not be covered here). so if the log is slow, then the system will become slow when we talk about Inserts, updates, deletes.
When we have solved these issues at customers, then we often have focused on the IO system, because you can try working with the numbers of virtual log files (internal units inside the logfil), but in most systems it is very simple:
- You need to insert some records. they are written to the logfile.
- You are waiting on the write to the logfile.
Technical guys will hate me for this simplification, but that is the fact in 95% of all situations where we see these waits
Perhaps except logmgr_reserve_append, but still, when I see this wait type, then I often also see writelog or logbuffer.
What to do
- Do less on the SQL Server :-( (of course that is difficult).
- See if you are doing a lot of bulk inserts and if Bulk-logged recovery model can help on that.
- See if the virtual filestats of log drive is to bad (higher than 5 ms for writes). If so, then you might think of changing IO System.
- Expand the log file (if you see logmgr_reserve_append).