Tuesday 27 November 2012

How to run back-to-back NSDs on Windows systems to troubleshoot performance or hang issues



Question
You are encountering numerous hangs or periodic slowdowns on your Lotus Domino server running on a Windows system, and have been advised by IBM Support to run frequent NSDs, also referred to as "back-to-back" NSDs.
Is there a way to do this without having to continually close the NSD windows (which ultimately forces a restart of Domino)?


Answer
It is possible to run periodic NSDs while the Domino server is up and running. The steps to do so vary by Windows platform (as well as version of NSD) and are outlined below.
Windows 2003, 2008 & XP
Windows 2003, 2008 and Windows XP allows for a debugger to detach from the process without terminating that process.

IMPORTANT NOTE: If still attached, you must issue the NSD command "detach" before exiting NSD.

1. Open a DOS Prompt window and change directories to your Domino\data directory
2. Execute NSD. You will need specify the explicit path to nsd.exe, which is normally found in the Domino program directory.
3. NSD will run and write information to the console. When it finishes execution, depending on the version of NSD you are running, NSD will display its own command prompt "nsd>". Do NOT exit NSD (by either closing the command prompt window, or typing exit).
4. Periodically, at the time of the slowdown, or as directed by IBM Support, type the word "DUMP" in the NSD window. This will result in the collection of call stacks an additional time by NSD. Other sections of data may be gathered such as "memcheck" by issuing the appropriate command.
By leaving the original NSD window open, you have the opportunity to capture NSDs when the server is running efficiently and when it is not.
Versions of NSD
In versions of NSD prior to Notes/Domino 7.0.2, on Windows 2003, 2008 & XP, NSD will still remain attached to all processes, but you can detach from all processes using the "detach" command at the NSD prompt.
Beginning in Notes/Domino 7.0.2, NSD will automatically detach from all processes on Windows 2003, 2008 & XP. If you wish to remain attached, you may use the NSD -monitor switch, and issue the command "detach" when you are ready to quit NSD.
NSD Log Results
The output of each execution of NSD will be written to the IBM_Technical_Support directory, relative to your Domino\Data directory. In cases where you execute back-to-back dumps before exiting NSD, the data from each subsequent dump will be appended to the same NSD file. In cases where NSD automatically detaches from Notes/Domino on Windows 2003, 2008 & XP, multiple NSD files will be generated. You will need to provide each NSD to the Software Engineer you are working with.