On Apr 4, 2007, at 3:53 PM, robr wrote:


server Env:

  4 Gig Mem  with 2048M max JVM heap assigned to java

Linux amq1 2.6.12-1.1447_FC4smp #1 SMP Fri Aug 26 21:03:12 EDT 2005
x86_64 x86_64 x86_64 GNU/Linux

JVM - java version "1.5.0_09"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_09-b03)
Java HotSpot(TM) Client VM (build 1.5.0_09-b03, mixed mode, sharing)

FAQ - if this JVM is 32 bit and i have 4G available, can i just increase -Xmx from 2048M to 3500M and solve the problem by reacting directly to the
memory error?

Should i upgrade the broker from 3.1 to 3.2.2 to address the memory issue?
we are using persistence ( hypersonic DB?) and no journaling.
We process 600K messages per day.

Im curious about what todo with this error if the JVM already has 2048M
allocated.

I don't think increasing your heap memory will help you. In fact it could well hurt... You may actually find that reducing your heap size may help avoid this problem. Java (and your OS) will allocate non- heap memory for things like open files and Threads. Increasing your heap size can actually reduce the amount of memory available for these other purposes.

As I recall, you used to be able to configure how much stack memory was allocated per thread (-oss and -css? -- it's been a while since I dealt with these...). I'd start by reducing your heap size a bit (2048m --> gigs -> 1536m, maybe).

--kevan

Reply via email to