Scalable Database Server, HiRDB Version 8 Installation and Design Guide
![[Contents]](FIGURE/CONTENT.GIF)
![[Index]](FIGURE/INDEX.GIF)
![[Back]](FIGURE/FRONT.GIF)
(1) Determining the desktop heap settings
The size of the desktop heap can be set in the registry and can be changed with a registry editor. This specification of the size of the heap is set for each account, with a 48-megabyte maximum for the entire server machine. The size of the desktop heap used by HiRDB processes is approximately 5 kilobytes per process. Use the following formula to determine the target registry setting:
- Formula
Number of activated HiRDB processes (value of pd_max_server_process) 5 (KB) |
Also consider the following:
- For Windows 2000, the default size for the desktop heap is 512 kilobytes. Therefore, on systems for which the value of pd_max_server_process is 100 or greater, the desktop heap can become insufficient. If the number of active processes becomes close to 100, a shortage occurs on the desktop heap.
- If the setting is too large, it can be subject to influence by the action of other program products running under other accounts. For this reason, you should not set the value higher than is necessary.
- The processes activated by HiRDB are not limited to OS commands executed by HiRDB server processes and by users, and to utilities. Commands executed to collect maintenance information when a HiRDB process terminates abnormally are also processes that HiRDB activates and which use the desktop heap. If a large number of HiRDB server processes terminate abnormally or are cancelled, and if the cause is an insufficient desktop heap (end state=0x8000 indicated in the KFPS01820-E message indicating that server processes have stopped), do not adjust the size of the desktop heap, but change the system common definition so that maintenance information is not collected.
- HiRDB running on one system account uses the same desktop heap used by programs running under the OS or on other system accounts. Therefore, if, for example, you are using Windows 2000 with a desktop heap size of 512 kilobytes, then even if HiRDB has activated fewer than 100 processes, when new HiRDB processes are activated it may be possible to detect an insufficient desktop heap.
(2) Changing the desktop heap setting
This section describes the procedure for changing the desktop heap. If you misuse the registry editor, it is possible to cause serious problems, so great caution should be exercised. In addition, the setting for the desktop heap must be adjusted for the particular operating environment.
- Stop the HiRDB service.
- Use the registry editor to change the setting for the desktop heap for the non-interactive desktop.
Registry key
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\SubSystems
Registry setting
Windows
Value
%SystemRoot%\system32\csrss.exe ObjectDirectory
=\Windows SharedSection=1024,3072,512
Windows=On SubSystemType=Windows ServerDll=basesrv,1
ServerDll=winsrv:UserServerDllInitialization,3
ServerDll=winsrv:ConServerDllInitialization,2
ProfileControl=Off MaxRequestThreads=16
What you change is the third parameter of SharedSection (underlined). If this parameter is set to 512, the system allocates a 512-kilobyte heap to each desktop. If the third parameter is omitted, the second value (3,072 kilobytes) is allocated. Change the third parameter to the value determined in (1) Determining the desktop heap settings. In this case, it is imperative that the value specified for pd_max_server_process be estimated correctly.
- Restart the operating system.
- Restart the HiRDB service.
All Rights Reserved. Copyright (C) 2007, Hitachi, Ltd.