Operating System - HP-UX
1825954 Members
2620 Online
109690 Solutions
New Discussion

Re: Multi threaded application growing to 1Gb in Size.

 
Derek Whigham_2
Occasional Advisor

Multi threaded application growing to 1Gb in Size.

I have a Multi threaded app that is growing to 1Gb in size after writing large amounts of data to a 9.2.0.4 Oracle database. The App grows between 40 - 120 Mb each time and progressivly get worse until the app dies,I have added additional Patches to try and resolve the problem (see Below). Anyone got any idea's

HP-UX is 11.11
Patch Level June 2003
Additional Patches PHSS_28302 and PHCO_31903
Model L3000-6xx
5 REPLIES 5
harry d brown jr
Honored Contributor

Re: Multi threaded application growing to 1Gb in Size.

Do you have glance?

Are your threads just growing and growing?

live free or die
harry d brown jr
Live Free or Die
Derek Whigham_2
Occasional Advisor

Re: Multi threaded application growing to 1Gb in Size.

Yes the task just gets bigger and bigger

to about 1Gb then bang, I am possibly looking to install 9.2.0.6 Patch onto Oracle to see if this is the issue
Kent Ostby
Honored Contributor

Re: Multi threaded application growing to 1Gb in Size.

What are your kernel parameters especially:
maxdsiz, maxssiz, dbc_min_pct, dbc_max_pct.

How much RAM do you have on the box ?
"Well, actually, she is a rocket scientist" -- Steve Martin in "Roxanne"
Derek Whigham_2
Occasional Advisor

Re: Multi threaded application growing to 1Gb in Size.

Thanks for all you help , But it turns out to be Oracle Upgrading to 9.2.0.6 solves the problem. It seems to be a threading issue were memory is not released properly.
Bill Hassell
Honored Contributor

Re: Multi threaded application growing to 1Gb in Size.

You first need to investigate whether the program is supposed to work that way (perfectly normal and expected to grow extremely large) or it is simply defective (a very typical programming error called a memory leak). Memory leaks are often assumed to be a kernel problem, but the real issue is usually in the program itself, or in libraries used by the program. I have a program that runs and grabs all the memory it can within one or two seconds. Depending on how I compile it as a 32bit program, it will grab 900, 1700, 2700 or 3700 megs in 32bit mode, and 167Gb (!) of RAM if compiled in 64bit mode. (the 167Gb limit is all the swap I could add to my 4Gb system. That's the way the program is supposed to work. There's nothing to fix in the kernel.

That said, is your multi-threaded program using Java? This is probably the leakiest (tm) code I've seen and often it is the Java libraries and routines that cause the problems. You might try moving to Java 1.5 ( http://www.hp.com.go/java ) but no guarentees.


Bill Hassell, sysadmin