1748081 Members
5183 Online
108758 Solutions
New Discussion юеВ

Re: Memory leak

 
Donald Crook
Occasional Contributor

Memory leak

We have encountered severe memory leaks recently on a HP-9000 (L-class) with 2 GB of physical memory. The only way to resolve the problem is to reboot the server. After rebooting, the amount of free memory (as shown by the "top" command) is 1.7 GB, but in less than a week it is below 100 MB.

This server is running HP-UX 11.0, multiple Netscape web servers, and Oracle 8i.

Has anyone encountered similar problems, and how were they resolved?

--Don
10 REPLIES 10
James A. Donovan
Honored Contributor

Re: Memory leak

If you have glance installed, you can use it to find out which processes are hogging the most memory.

Also, I know that there have been HP OS patches released which resolved memory leak issues with various daemons and such.

Also, check with Netscape. There may be patches you need to apply for the version of Netscape that you're running.
Remember, wherever you go, there you are...
Jitendra_1
Trusted Contributor

Re: Memory leak

Hi
Are you facing any performance degradation with this machine? It may be just the dynamic buffer cache using lots of memory. check your dbc_max and min kernel parameters. Also check with glance and top which processes are eating up your memory.
Learning is the Key!
Donald Crook
Occasional Contributor

Re: Memory leak

The memory report in glance shows that the buf cache remains (approximately) steady, while the user mem goes up relatively rapidly. The amount shown for user mem (at this moment) is about 900 MB, but that's about 500 MB larger than the sum of the memory used by all the processes added together.
Jitendra_1
Trusted Contributor

Re: Memory leak

If its memory leak, I know there are a couple of professional packages like "Purify" and "clarify" to spot and clear memory leaks , however they cost $$ .
Learning is the Key!
James R. Ferguson
Acclaimed Contributor

Re: Memory leak

Donald:

Set the UNIX95 environmental varible and run a custom 'ps' command [ compliments of Bill Hassell ]; notably:

UNIX95= ps -e -o "user,vsz,pid,ppid,arg" | sort -rnk2 | more

See the man pages for 'ps' for more details.

...JRF...
Steven Sim Kok Leong
Honored Contributor

Re: Memory leak

Hi,

You are running both netscape web servers as well as Oracle 8i on the same system.

Have you run glance or top to identify the processes with the highest memory consumption? Do you see the memory consumption increasing over time for these processes from the time these processes were first started up? Is this the right amount of memory each process should legitimately take up?

If you are running Oracle server single-threaded, do you observe a corresponding increase in the number of Oracle processes in the system with the memory consumption? Each client process will take up some memory outside the SGA. What is your Oracle timeout setting for client connections? Have you also set a limit to the number of Oracle processes in your system in initSID.ora?

For your netscape web servers, are you limiting the number of concurrent web sessions you are serving at any one time? What is your tcp_keepalive_interval? If you set it to too long, hung connections may accumulate in your server.

As a rule of thumb, it is usually not advisable to run multiple resource-intensive applications on a single server. This makes it harder to both finetune your system and isolate the application that is the cause of any performance bottleneck. In addition, you are risking a single point of failure as well by having all your applications running on a single system. Web servers also pose a greater security risk than databases. It is more secure to segregate applications of different security policies to contain any security breach.

If I were you, I will segregate the netscape web servers out of the L-class server and leave Oracle running as the sole application in the system.

Hope this helps. Regards.

Steven Sim Kok Leong
Brainbench MVP for Unix Admin
http://www.brainbench.com
Alexander M. Ermes
Honored Contributor

Re: Memory leak

Hi there.
Try to find the memory intense process with ipcs. If necessary, you can free the memory with the ipcrm command. But you should definitely be sure, what you do and that you identified the right process.
By the way, running a database and a webserver on the same machine requires some real hardware depending on the number of users.
Usually you should have one cpu per 50 to 60 users. Try to reduce the SGA of the database
and the memory adjustments for the webserver.
Rgds
Alexander M. Ermes
.. and all these memories are going to vanish like tears in the rain! final words from Rutger Hauer in "Blade Runner"
Dan Hetzel
Honored Contributor

Re: Memory leak

Hi Donald,

There is a known memory leak due to the "mib2agt" process.

Typing the following command will surely show that process on top:

UNIX95= ps -e -o ruser,vsz,pid,args | sort -rnk2 | head

It's solved with patch PHSS_21046.
ftp://ftp.itrc.hp.com/hp-ux_patches/s700_800/11.X/PHSS_21046


Best regards,

dan

Everybody knows at least one thing worth sharing -- mailto:dan.hetzel@wildcroft.com
Peter Cvar
Occasional Advisor

Re: Memory leak

I've had the same problem which has been completely fixed by the latest Netscape (iPLanet) service pack.

There are many memory leak related fixes in the iPLanet Web Server 4.1 and 4.0 service packs:

Web Server 4.1 SP1:
394323. SSL memory leak with client certificates

Web Server 4.0 SP2:
361653. A memory leak in ACLs has been fixed
362484. A memory leak in File Descriptors has been fixed
363598. A memory leak in file cache has been fixed

Regards
Peter