Operating System - HP-UX
1847203 Members
4506 Online
110263 Solutions
New Discussion

Re: frecover(5441) malloc error: not enough virtual memory

 
michi79
Frequent Advisor

frecover(5441) malloc error: not enough virtual memory

to use fastsearch.
check swap und maxdsiz

swapinfo shows that:
TYPE AVAIL USED FREE USED LIMIT RESERVE PRI NAME
dev 409600 34148 375452 8% 0 - 1 /dev/vg00/lvol2
reserve - 44260 -44260
memory 86120 32120 54000 37%

maxdsiz is standard, the box has
256MB ram and the files on disc
are 56 GB

How should maxdsiz be configured ?
any ideas ??

L. Wahl
Ludwig Wahl
4 REPLIES 4
T. M. Louah
Esteemed Contributor

Re: frecover(5441) malloc error: not enough virtual memory

Start by increasing swap, then make maxdsiz value equals to total amount of swap.
Little learning is dangerous!
Steven Gillard_2
Honored Contributor

Re: frecover(5441) malloc error: not enough virtual memory

If maxdsiz is still at the default of 64Meg then this is likely to be your problem. 256Meg on a system is not a lot to play with, so I'd probably increase maxdsiz to match this.

Regards,
Steve
Krishna Prasad
Trusted Contributor

Re: frecover(5441) malloc error: not enough virtual memory

I had this exact message at an off site DR test. We had to increase maxswapchunks and maxdsize, then add swapspace, reboot and this fixed the problem.

As far as a guide to how big to make maxdsize???

If you are running HPUX 11.0 you can make it as big as you wish. I have never heard of it causing a problem being to big, just to small.
Positive Results requires Positive Thinking
A. Clay Stephenson
Acclaimed Contributor

Re: frecover(5441) malloc error: not enough virtual memory

Hi:

While it is true that you can set maxdsiz (or the 64-bit equivalent) to large values; it is generally not a good idea. The value is simply a 'fence' and consumes no resources but it does serve a valuable purpose. Consider a really big process eating dynamically allocating memory. Eventually, the process will
will consume all the system-wide resources and bring the entire system to its knees. That is what maxdsiz is there to prevent. THe idea is that the offending process will fail during a malloc() and set ENOMEM. I would never set maxdsiz to the total size of virual memory; that truly will bring a box down in the above scenario. Now as to what is a good value - it depends but in 32-bit land 1GB or 512 MB is reasonable.
If it ain't broke, I can fix that.