Page 1 of 1

GC overhead limit exceeded

Posted: Tue Mar 06, 2012 11:31 am
by u3games
L2J Revision: 5214
L2JDP Revision: 8719

Log:
Exception in thread "C3P0PooledConnectionPoolManager-Helper Thread-#0" java.lang.OutOfMemoryError: GC overhead limit exceeded
Exception in thread "EffectsSTPool-12" java.lang.OutOfMemoryError: GC overhead limit exceeded
Exception in thread "EffectsSTPool-9" java.lang.OutOfMemoryError: GC overhead limit exceeded
Exception in thread "GeneralSTPool-13" java.lang.OutOfMemoryError: GC overhead limit exceeded
Exception in thread "AISTPool-13" java.lang.OutOfMemoryError: GC overhead limit exceeded
Exception in thread "AISTPool-9" java.lang.OutOfMemoryError: GC overhead limit exceeded
Exception in thread "EffectsSTPool-5" java.lang.OutOfMemoryError: GC overhead limit exceeded
NPC 32335 class not found
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
at com.l2jserver.gameserver.model.L2Spawn.doSpawn(L2Spawn.java:474)
at com.l2jserver.gameserver.model.L2Spawn.doSpawn(L2Spawn.java:432)
at com.l2jserver.gameserver.model.AutoSpawnHandler$AutoSpawner.run(AutoSpawnHandler.java:511)
at com.l2jserver.gameserver.ThreadPoolManager$RunnableWrapper.run(ThreadPoolManager.java:86)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:351)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:178)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
Caused by: java.lang.OutOfMemoryError: GC overhead limit exceeded

Exception in thread "GeneralSTPool-7" java.lang.OutOfMemoryError: GC overhead limit exceeded
Exception in thread "EffectsSTPool-4" java.lang.OutOfMemoryError: GC overhead limit exceeded
Exception in thread "AISTPool-19" java.lang.OutOfMemoryError: GC overhead limit exceeded
Exception in thread "GeneralSTPool-21" java.lang.OutOfMemoryError: GC overhead limit exceeded
Exception in thread "EffectsSTPool-3" java.lang.OutOfMemoryError: GC overhead limit exceeded
Info server:
MICRO INTEL CORE I3 2100 3.1GHz S1155 3MB IN BOX
PB i3i5i7 S1155 GIGABYTE GAZ68MD2H 4DDR3VGAPCIEX2STA32USBRAIHDMIMATX
MEMORIA DDR3 4GB PC3-12800 1600MHZ KINGSTON HYPERX BLUE KHX1600C9D3B1/4G x2 = 16GB RAM
HD SATA III 500GB WESTERN DIGITAL CAVIAR GREEN SERIAL ATA III 32MB RETAIL x2 = 1Tb
Server run in ubuntu server, What should I do?

Re: GC overhead limit exceeded

Posted: Tue Mar 06, 2012 2:26 pm
by tukune
post GameServer_loop.sh

Re: GC overhead limit exceeded

Posted: Tue Mar 06, 2012 5:20 pm
by u3games
DrOR wrote:post GameServer_loop.sh
Game Server:

Code: Select all

#!/bin/bash # exit codes of GameServer:#  0 normal shutdown#  2 reboot attempt while :; do    [ -f log/java0.log.0 ] && mv log/java0.log.0 "log/`date +%Y-%m-%d_%H-%M-%S`_java.log"    [ -f log/stdout.log ] && mv log/stdout.log "log/`date +%Y-%m-%d_%H-%M-%S`_stdout.log"    java -Djava.util.logging.manager=com.l2jserver.util.L2LogManager -Xms1024m -Xmx1024m -cp ./../libs/*:l2jserver.jar com.l2jserver.gameserver.GameServer > log/stdout.log 2>&1    [ $? -ne 2 ] && break#   /etc/init.d/mysql restart    sleep 10done 
Login Server:

Code: Select all

#!/bin/bash err=1until [ $err == 0 ]; do    [ -f log/java0.log.0 ] && mv log/java0.log.0 "log/`date +%Y-%m-%d_%H-%M-%S`_java.log"    [ -f log/stdout.log ] && mv log/stdout.log "log/`date +%Y-%m-%d_%H-%M-%S`_stdout.log"    nice -n -2 java -Xms128m -Xmx128m -cp ./../libs/*:l2jlogin.jar com.l2jserver.loginserver.L2LoginServer > log/stdout.log 2>&1    err=$?#   /etc/init.d/mysql restart    sleep 10;done 

Re: GC overhead limit exceeded

Posted: Tue Mar 06, 2012 11:41 pm
by fokysss
in GameServer_loop.sh edit -Xms1024m -Xmx1024m change to -Xms1024m -Xmx8192m
So your server will use 8 GB RAM

Re: GC overhead limit exceeded

Posted: Tue Mar 06, 2012 11:50 pm
by MELERIX
guys don't forget that you are sharing memory with MySQL and OS, you shouldn't assign the whole system physical memory for L2J.

Re: GC overhead limit exceeded

Posted: Tue Mar 06, 2012 11:53 pm
by Zoey76
MELERIX wrote:guys don't forget that you are sharing memory with MySQL and OS, you shouldn't assign the whole system physical memory for L2J.
And login server :D

Re: GC overhead limit exceeded

Posted: Tue Mar 06, 2012 11:56 pm
by u3games
Zoey76 wrote:
MELERIX wrote:guys don't forget that you are sharing memory with MySQL and OS, you shouldn't assign the whole system physical memory for L2J.
And login server :D
The server is only for l2j, which suggest I use?

Re: GC overhead limit exceeded

Posted: Wed Mar 07, 2012 4:37 am
by tukune
try fokysss suggestion

Re: GC overhead limit exceeded

Posted: Wed Mar 07, 2012 10:46 am
by u3games
DrOR wrote:try fokysss suggestion
Ok, thx ^^

Re: GC overhead limit exceeded

Posted: Thu Mar 08, 2012 7:54 pm
by Starter
Memory leak?

Re: GC overhead limit exceeded

Posted: Fri Mar 09, 2012 7:49 pm
by u3games
Starter wrote:Memory leak?
Testing on my server public...

PD: Solved, thx ^^