You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ode.apache.org by Andi Abes <aa...@progress.com> on 2009/03/19 02:20:03 UTC

PermGen space during operation

I got a bunch of these out of memory exceptions (ODE 1.2, tomcat, Linux,
Hiberate, Oracle). The surprising part is that these occurred only after
ther server was running happily for a while.As far as I know, PermGen
space is only used for the actual class definitions, and I'd expect that
after some stabilization time after startup (and I'm not deploying
anything new into the engine), then PermGen usage should be stable.

Are there dynamic classes being generated?

 

 

FATAL - GeronimoLog.fatal(120) | InternalError: BpelEvent serialization
failed.

java.lang.OutOfMemoryError: PermGen space

        at java.lang.Class.getDeclaredMethods0(Native Method)

        at java.lang.Class.privateGetDeclaredMethods(Class.java:2395)

        at java.lang.Class.getDeclaredMethod(Class.java:1907)

        at
java.io.ObjectStreamClass.getPrivateMethod(ObjectStreamClass.java:1354)

        at
java.io.ObjectStreamClass.access$1700(ObjectStreamClass.java:52)

        at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:421)

        at java.security.AccessController.doPrivileged(Native Method)

        at java.io.ObjectStreamClass.<init>(ObjectStreamClass.java:400)

        at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java:297)

        at java.io.ObjectStreamClass.<init>(ObjectStreamClass.java:396)

        at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java:297)

        at java.io.ObjectStreamClass.<init>(ObjectStreamClass.java:396)

        at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java:297)

        at
java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1035)

        at
java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:13
75)

        at
java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:39
1)

        at org.apache.xerces.dom.NodeImpl.writeObject(Unknown Source)

        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
a:39)

        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
Impl.java:25)

        at java.lang.reflect.Method.invoke(Method.java:585)

        at
java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:917)

        at
java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1339)

        at
java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1
290)

        at
java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1079)

        at
java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:13
75)

        at
java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1347)

        at
java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1
290)

        at
java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1079)

        at
java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:302)

        at
org.apache.ode.daohib.bpel.BpelDAOConnectionImpl._insertBpelEvent(BpelDA
OConnectionImpl.java:179)

        at
org.apache.ode.daohib.bpel.ProcessInstanceDaoImpl.insertBpelEvent(Proces
sInstanceDaoImpl.java:306)

 

 

ERROR - GeronimoLog.error(108) | Error while processing transaction,
retrying.

org.apache.ode.bpel.iapi.Scheduler$JobProcessorException:
java.lang.RuntimeException: java.lang.OutOfMemoryError: PermGen space

        at
org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.
java:336)

        at
org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(BpelServerImpl.
java:373)

        at
org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(SimpleScheduler
.java:337)

        at
org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(SimpleScheduler
.java:336)

        at
org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleSc
heduler.java:174)

        at
org.apache.ode.scheduler.simple.SimpleScheduler$4.call(SimpleScheduler.j
ava:335)

        at
org.apache.ode.scheduler.simple.SimpleScheduler$4.call(SimpleScheduler.j
ava:332)

        at
java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)

        at java.util.concurrent.FutureTask.run(FutureTask.java:123)

        at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecuto
r.java:650)

        at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.ja
va:675)

        at java.lang.Thread.run(Thread.java:595)

Caused by: java.lang.RuntimeException: java.lang.OutOfMemoryError:
PermGen space

        at
org.apache.ode.jacob.vpu.JacobVPU$JacobThreadImpl.run(JacobVPU.java:464)

        at org.apache.ode.jacob.vpu.JacobVPU.execute(JacobVPU.java:139)

        at
org.apache.ode.bpel.engine.BpelRuntimeContextImpl.execute(BpelRuntimeCon
textImpl.java:835)

        at
org.apache.ode.bpel.engine.PartnerLinkMyRoleImpl.invokeNewInstance(Partn
erLinkMyRoleImpl.java:197)

        at
org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java:20
4)

        at
org.apache.ode.bpel.engine.BpelProcess.handleWorkEvent(BpelProcess.java:
372)

        at
org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.
java:326)

        ... 11 more

Caused by: java.lang.OutOfMemoryError: PermGen space

        at java.lang.ClassLoader.defineClass1(Native Method)

        at java.lang.ClassLoader.defineClass(ClassLoader.java:620)

        at
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)

        at
org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappCla
ssLoader.java:1847)

        at
org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader
.java:890)

        at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader
.java:1354)

        at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader
.java:1233)

        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)

        at
org.hibernate.exception.NestableDelegate.printStackTrace(NestableDelegat
e.java:325)

        at
org.hibernate.exception.NestableRuntimeException.printStackTrace(Nestabl
eRuntimeException.java:195)

        at
org.apache.log4j.spi.ThrowableInformation.getThrowableStrRep(ThrowableIn
formation.java:59)

        at
org.apache.log4j.spi.LoggingEvent.getThrowableStrRep(LoggingEvent.java:3
42)

        at
org.apache.log4j.WriterAppender.subAppend(WriterAppender.java:304)

        at
org.apache.log4j.WriterAppender.append(WriterAppender.java:159)

        at
org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:230)

        at
org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders(Ap
penderAttachableImpl.java:65)

        at org.apache.log4j.Category.callAppenders(Category.java:203)

        at org.apache.log4j.Category.forcedLog(Category.java:388)

        at org.apache.log4j.Category.log(Category.java:853)

        at
org.apache.commons.logging.impl.Log4JLogger.error(Log4JLogger.java:251)

        at
org.apache.geronimo.kernel.log.GeronimoLog.error(GeronimoLog.java:108)

        at
org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(
AbstractFlushingEventListener.java:301)

        at
org.hibernate.event.def.DefaultAutoFlushEventListener.onAutoFlush(Defaul
tAutoFlushEventListener.java:41)

        at
org.hibernate.impl.SessionImpl.autoFlushIfRequired(SessionImpl.java:969)

        at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1114)

        at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)

        at
org.apache.ode.daohib.bpel.ScopeDaoImpl.getVariable(ScopeDaoImpl.java:13
1)

        at
org.apache.ode.bpel.engine.BpelRuntimeContextImpl.readVariable(BpelRunti
meContextImpl.java:487)

        at
org.apache.ode.bpel.runtime.ScopeFrame.fetchVariableData(ScopeFrame.java
:198)

        at
org.apache.ode.bpel.runtime.ACTIVITY.fetchVariableData(ACTIVITY.java:154
)

        at
org.apache.ode.bpel.runtime.INVOKE.setupOutbound(INVOKE.java:211)

        at org.apache.ode.bpel.runtime.INVOKE.run(INVOKE.java:72)