Post-SP2 Bug List Status
As of May 7, Microsoft has updated the Windows 2000 Post-Service Pack 2 (SP2) bug list to include 810 entries. New postings include a rerelease of the File Replication Service (FRS) hotfix that corrects NTFS bugs that Microsoft introduced with the previous FRS hotfix, the Microsoft IIS Cumulative Update, COM+ version 20, and three patches for Windows 2000 Terminal Services problems. Do you think the list will reach 1000 entries before Microsoft finally releases SP3? I bet it will be close if we add in all the security updates Microsoft has published during the last 12 months—whew!
Regardless, we'll need to test SP3 for weeks to ensure production systems perform as expected. Although Microsoft has a rigorous testing methodology for code fixes, validating such an extensive OS update in all environments and under all conditions is impossible. Aside from the nearly infinite variations in how system administrators configure and fine-tune networks, I worry about how such a massive update will perform when we accidentally make mistakes configuring components or services.
Given the complexity of such massive updates, maybe we need to encourage Microsoft to issue service packs at least twice a year, instead of only once. Would you rather test one mammoth update for weeks and distribute 100MB packages across your network, or would you prefer smaller updates that are easier to test and distribute? Please send your feedback directly to me, firstname.lastname@example.org. I'd love to hear what you think.
Third Version of FRS Hotfix Corrects Replication Problems
The File Replication Service (FRS) is an essential component of Windows 2000 networks. The FRS code in the Win2K gold version didn't perform well on systems with large replication sets. To address the FRS performance problems, Microsoft released an important FRS update in October of 2001. As I explained in a previous column on this subject (see "New Multiprocessor Issues; More Desktop Shortcuts,"), the FRS update added intelligence to replication and file management algorithms that significantly enhanced the performance of file replication. See Microsoft article "Changes to the File Replication Service" for a detailed description of the enhancements in the original release.
In March, Microsoft released a second version of the FRS update to correct problems with Microsoft Office data files in the original FRS release. In a recently posted article, Microsoft admits to yet a third version of the FRS hotfix, which eliminates a host of replication concerns caused by the modified file system driver ntfs.sys packaged with the second version. The NTFS bug prevents some rename operations and prevents the FRS from fully replicating files and directories on systems where the replicated directory tree doesn't grant the System account full control.
According to the Microsoft article "Improvements in the Post-SP2 Release of Ntfrs.exe That Is Packaged with an Updated Ntfs.sys Driver", a system experiencing the NTFS access problem exhibits inconsistencies in the contents of replication sets. For example, a file or directory on an upstream partner might not be replicated to other systems or the file versions on replication partners might not be the same. Also, FRS might replicate only files you create in Windows Explorer—not files and directories you create with Microsoft Office applications (e.g., Save or Save As) or files you create with commands such as mkdir or copy. Note that these problems shouldn't occur on servers where the System account has full control over the replica structure.
If you notice these symptoms on a system where you've installed either of the two previous versions of the FRS hotfix, you can workaround the inconsistencies by granting the System account Full Control over the replica root and all lower directories and files. The Microsoft article referenced above, Q321557, contains step-by-step instructions on how to adjust the system ACLs. For a permanent solution, call Microsoft Product Support Services (PSS) and ask for the third version of this hotfix, now called Q321557. The hotfix contains five files: ntfrs.exe, ntfrsapi.dll, frsprf.dll, ntfrsres.dll, and ntfs.sys, with file release dates of March 2 and April 3. The third FRS update will be included in SP3.
Terminal Server Temporary Blackouts
A registry flush timing problem in the kernel can cause Windows 2000 Server Terminal Services systems supporting 50 to 100 concurrent connections to blackout for 10 to 30 seconds. A system with this problem will temporarily hang multiple times per day. During the blackout period, the server will respond to a ping, but the mouse and keyboard are unresponsive until the registry flush operation completes. When the server has enough free memory, the system hangs temporarily and then recovers. On a system with less available memory, the performance degradation is more obvious.
Microsoft suggests three possible workarounds for this problem: enable system write-back caching, reduce the size of user profiles, and lengthen the time interval between registry flush operations. When you increase the time between registry flushes, the OS can package multiple registry modifications in one write operation. The Microsoft article "Terminal Services Performance Problem Because of Contention on CmpRegistryLock" contains instructions on the manual registry modification you need to make to increase the interval between flushes. To permanently solve the problem, call Microsoft PSS and ask for the Terminal Services update, which contains a new version of four kernel files: ntkrnlmp.exe, ntkrnlpa.exe, ntkrpamp.exe, and ntoskrnl.exe. All four files have a release date of February 26.
Blue Screen During Terminal Services Logoff
Do any of your Windows 2000 Server Terminal Services user systems crash when they log off a Terminal Services session? If so, take heart, the problem isn't with the client system configuration; it occurs when the OS attempts to access the desktop window after another component has already deleted the window. A system experiencing this problem will crash in win32k.sys with a stop code of 0x1E when the user logs off. The bug fix for this problem contains updates to nine core files that manage the GUI, the desktop environment, and the logoff process: basesrv.dll, gdi32.dll, kernel32.dll, user.exe, user32.dll, userenv.dll, win32k.sys, and winlogon.exe. Most of the files have a release date of April 16, and you must obtain this fix directly from Microsoft Product Support Services (PSS). According to the documentation, Microsoft will include both Terminal Services bug fixes in SP3.