Kbase P20901: How to overcome the shared memory limitations on IBM AIX using EXTSHM
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  15/10/2008 |
|
Status: Verified
GOAL:
How to overcome the shared memory limitations on IBM AIX using EXTSHM
FACT(s) (Environment):
IBM AIX
FIX:
Previously AIX had a limit of 10 shared memory segments per process. In AIX Version 4.2.1 and later this limit has been raised to 11. The maximum size of a shared memory segment Progress can access on AIX is 128M. This limits the total shared memory area for a process to 1.4Gb, which may be smaller than desired for very large (or multiple) databases.
On AIX 4.2.1 and later there is an environment variable you can set to remove the 11 segment limit. It is EXTSHM.
WARNING: Performance problems have been reported after using EXTSHM. This is because using EXTSHM depending upon where it is set will be activated for all processes on the system. Therefore, many processes that do not require EXTSHM will be affected. EXTSHM is needed ONLY for Progress product components that directly connect to databases open in multi-user mode. Therefore, either all of the scripts like proserve, mpro, pro, and so forth should be modified to include a call to a script that enables the EXTSHM setting, or if you don't want to modify them, then copies of these scripts should be made and used instead.
To set this variable:
From the Korn shell:
EXTSHM=ON; export EXTSHM
From the C shell:
set EXTSHM=ON
This flag sets up a different type of shared memory which cannot be used as an I/O buffer with some databases. Progress can make use of this for processes which directly connect to shared memory.
.