Consultor Eletrônico



Kbase P22593: How to overcome the shared memory limitations on IBM AIX usi
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   03/04/2003
Solution ID: P22593

GOAL:

How to overcome the shared memory limitations on IBM AIX using Remote Servers

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, described in Progress Solution P20901 . However, implementing this parameter can cause performance problems and in that case you may want to attempt to use Remote Servers instead.

Start each additional database broker using Networking (-S parameter), and have the client connect to these databases using a Client/Server connection rather than a host based connection.

By doing this, only the remote server process is connecting directly to shared memory of a single database. This is different to a single client process trying to connect to the shared memory of ALL databases, the combination of which is causing the client to exceed the IBM limit.

1. For each of the databases that you would like to start a remote server, create a unique TCP entry within the /etc/services file.
2. Stop and restart the database, but this time give it an additional startup parameter of "-S servicename", where servicename is the service name that you specified within the /etc/services file.
3. Change the client startup parameter to connect to the appropriate database using the exact same -S parameter.

Please see Progress Solution 7527 for further details on Progress networking.