The NTFS log file is a circular log of all file operations, kept on disk so that unsuccessful operations can be rolled back safely. Each NTFS partition has its own log, which is set to a fixed size. If the log fills up, all NTFS file operations are suspended until the log is completely cycled through and flushed out to disk. This takes time, of course, and during that time absolutely nothing else can happen with the file system. Under very high I/O conditions, the system can appear to stop completely because of this.
There are several ways of addressing this problem, but they usually involve upgrading hardware; switching from a single disk to a striped RAID array is one way, for instance. But hardware upgrades are expensive and require a fair amount of downtime, so unless such plans are already on the table, you aren't likely to get quick approval. Moreover, there can be problems in migrating from one disk structure to another, which can lead to more downtime than you expected.
Another possible workaround involves increasing the size of the NTFS log file by using the CHKDSK tool, which is inexpensive and usually only requires a reboot to take effect. Since disk space is usually cheap, this is the most cost-effective first step towards limiting this bottleneck.
- Run CHKDSK /L on the partition in question to determine the current logfile size. The default is usually 65535K.
- To change the size, run CHKDSK <partition> /L:<size>
- /F, where <partition> is the partition letter with colon, and size is the new size in kilobytes. Try doubling the size of the logfile for starters.
- You may need to reboot for this to take effect.
Serdar Yegulalp is the editor of the Windows 2000 Power Users Newsletter. Check out his Windows 2000 blog at www.thegline.com/win2kblog/ for his latest advice and musings on the world of Windows network administrators – please share your thoughts as well!
This was first published in May 2003