ADSM-L

Re: memory exhausted

2000-05-17 07:43:46
Subject: Re: memory exhausted
From: Richard Sims <rbs AT BU DOT EDU>
Date: Wed, 17 May 2000 07:43:46 -0400
>> I have following problem with a AIX-BA-Client (3.7.0.0.) (oslevel: 4.3.2)
>>
>> ANS1075E
>>           *** Program memory exhausted ***
>>
>> Explanation: The program has exhausted all available storage.
>> System Action: Processing stopped.
>> User Response: Free any unnecessary programs, for example, terminate and stay
>> resident programs (TSRs), that are running and retry the operation. Reducing 
>> the scope of
>> queries and the amount of data returned can also solve the problem.
>>
>> Does anybody know the reason?
>> Regards Winfried
>
>We've had a similar problem when there was only one memory segment
>(255MB)
>to the client available.

Assuming that it's not a Unix Limits problem or system virtual storage
shortage, it may be the mentioned need of more than the standard single
memory segment that AIX affords processes.  Refer to AIX documentation
on Large Program Support for background.  And here are some detailed
notes, written for similar problem in dsmreconcile, which you can follow
to alter a copy of dsmc to give it more room...

dsmreconcile fails on a very large file system
        The size of the dsmreconcile process may exceed the size of one data
        segment (256 MB), which is the default number of segments a process may
        use.  The dsmreconcile process is in this case killed by the system.
        The work-around for this is to enable dsmreconcile to be able to use
        more than one data segment by enabling Large Program Support, using the
        following commands:
                cd /usr/lpp/adsm/bin
                /usr/bin/echo '\0200\0\0\0' |
                 dd of=dsmreconcile bs=4 count=1 seek=19 conv=notrunc
        which causes the XCOFF o_maxdata field (see <aouthdr.h>) to be updated.
        This allows dsmreconcile to use the maximum of 8 data segments (2 GB).
        Choose the string to use for a given number of data segments from
        the following table:
                # segments    vm size       string
                ------------------------------------------------
                8             2 GB          '\0200\0\0\0'
                6             1.5 GB        '\0140\0\0\0'
                4             1 GB          '\0100\0\0\0'
                2             512 MB        '\040\0\0\0'

 Richard Sims, BU
<Prev in Thread] Current Thread [Next in Thread>