[jboss-user] [EJB 3.0] - Re: PermGen leak when passing detached entities over remote

ptabor do-not-reply at jboss.com
Tue Oct 10 07:28:30 EDT 2006


I got the same problem... 
PermGen in EJB3 client aplication by remote interface. 
The application is as sample as it can be:
  -get remote interface of stateless EJB3 (by JNDI)
  - ask 1000 times to get a Collection of 10 EntityBeans. 

After 255 there is OutOfMemory: PermGen. 
JVM options changes nothing (eventualy more PermSpace => longer run). 

The reason looks like the Javassist create lazyinitializer classes for every EntityBean retrived from the server. 

So: When I debug on server-side, I got before sending Entity to client: 
I got: 
myEntity[0].id=143534
myEntity[0].flow=<FlowEntity_$$_javassist_7> 13434
...
myEntity[0].user=<UserEntity_$$_javassist_15>...
myEntity[0].stage=<StageEntity_$$_javassist_17>...

And every remote call the class names (name)_$..._javassist_(index) got the same 
indexes (7,15,17) on server side (end every entity in returned collections of entities) 

But when I debug on client site - after return from remote call - the indexes of
all returned entities are different (Each next increments index). 

So after first call I got: 

myEntity[0].id=143534
myEntity[0].flow=<FlowEntity_$$_javassist_0>...
...
myEntity[0].user=<UserEntity_$$_javassist_1>...
myEntity[0].stage=<StageEntity_$$_javassist_2>...
...
myEntity[1].id=143534
myEntity[1].flow=<FlowEntity_$$_javassist_3> 
...
myEntity[1].user=<UserEntity_$$_javassist_4>...
myEntity[1].stage=<StageEntity_$$_javassist_5>...
...

After secund call:


myEntity[0].id=143534
myEntity[0].flow=<FlowEntity_$$_javassist_6>...
...
myEntity[0].user=<UserEntity_$$_javassist_7>...
myEntity[0].stage=<StageEntity_$$_javassist_8>...
...
myEntity[1].id=143534
myEntity[1].flow=<FlowEntity_$$_javassist_9> 
...
myEntity[1].user=<UserEntity_$$_javassist_10>...
myEntity[1].stage=<StageEntity_$$_javassist_11>...
...


And so on... ... and permGen after 260 iterations...

I have not idea, how to deal with that...

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3977202#3977202

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3977202



More information about the jboss-user mailing list