I
iksrazal
Hi all,
We've recently aquired a new dual processor 3.0GHZ Xeon running Suse
9.2 . It has 4 gigs of ram. However, the JVM is crashing daily. Our app
has never shown this behavior before - though it never has run on a
machine with more than I gig of ram. Its a tomcat webapp running
hibernate. Here's the JVM args we pass to tomcat:
CATALINA_OPTS="-server -Xms512m -Xmx2048m -Xincgc -XXermSize=128m
-XX:MaxPermSize=512m"
We're seeing errors like:
Exception in thread "CompilerThread0" java.lang.OutOfMemoryError:
requested 1801688 bytes for Chunk::new. Out of swap space?
and:
#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
# SIGSEGV (0xb) at pc=0xb2b5027f, pid=3630, tid=38177712
#
# Java VM: Java HotSpot(TM) Server VM (1.5.0_06-b05 mixed mode)
# Problematic frame:
# J java.lang.StringCoding.encode(Ljava/lang/String;[CII)[B
#
Even though the machine's load average (top) is under 1. This machine
has a low load until it hits production.
I did set the ulimit:
ulimit -s 3072
I've also tried 2048.
So my question is: Can I safely allocate 2048 megs on 32 bit intel
running linux, with 4 gigs total and nothing else running that's heavy?
What's the max I can allocate?
iksrazal
http://www.braziloutsource.com/
We've recently aquired a new dual processor 3.0GHZ Xeon running Suse
9.2 . It has 4 gigs of ram. However, the JVM is crashing daily. Our app
has never shown this behavior before - though it never has run on a
machine with more than I gig of ram. Its a tomcat webapp running
hibernate. Here's the JVM args we pass to tomcat:
CATALINA_OPTS="-server -Xms512m -Xmx2048m -Xincgc -XXermSize=128m
-XX:MaxPermSize=512m"
We're seeing errors like:
Exception in thread "CompilerThread0" java.lang.OutOfMemoryError:
requested 1801688 bytes for Chunk::new. Out of swap space?
and:
#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
# SIGSEGV (0xb) at pc=0xb2b5027f, pid=3630, tid=38177712
#
# Java VM: Java HotSpot(TM) Server VM (1.5.0_06-b05 mixed mode)
# Problematic frame:
# J java.lang.StringCoding.encode(Ljava/lang/String;[CII)[B
#
Even though the machine's load average (top) is under 1. This machine
has a low load until it hits production.
I did set the ulimit:
ulimit -s 3072
I've also tried 2048.
So my question is: Can I safely allocate 2048 megs on 32 bit intel
running linux, with 4 gigs total and nothing else running that's heavy?
What's the max I can allocate?
iksrazal
http://www.braziloutsource.com/