On May 31, 2011, at 6:30 AM, Timothy Ward wrote: > > Hi, > > My guess would be that this occurs when we create dynamic proxy objects for > interfaces and isn't related to the load-time weaving at all (although the > code was added at the same time). We end up with one classloader per set of > interfaces we get asked to proxy, and we only cache the 64 (I think) most > recently used classloaders for reuse. This does lead to quite a lot of > classloaders, which has probably caused the increase in permgen usage. I can > take a look at the code to try and make it a bit less classloader happy, but > I also think this is yet another issue with Sun's use of PermGen!
Meh. I wouldn't blame PermGen. Looks like you're using about 60 megs worth of additional memory. No matter what you call it: PermGen or heap, it all counts... > Increasing PermGen should avoid any problems, I/We can try to improve the > caching/reuse of classloaders to reduce the permgen load as well if you like. Seems like it's definitely worth a look. --kevan
