#215 Possible ClassLoader Leaks on WebSphere

Dozer v5.2
closed-fixed
5
2010-01-04
2009-09-01
dmitry (lv)
No

On WebSphere container and IBM JDK objects of type Method should not be cached. This is currently done in property descriptors (MapPropertyDescriptor for example). This results in extensive amount of ClassLoaders being created and not garbage collected as each method.invoke() reflective accessor results in new ClassLoader creation on given environment. Then classloaders gets attached to Dozer context.

Workaround is to increase Perm Size of JVM and perform "hard" restart from time to time. Issue is reproducible after several redeployments of the application.

Discussion

  • Troy Gaines

    Troy Gaines - 2009-09-10

    Can you please explain further? We indirectly use JavaBeanPropertyDescriptor and seem to have some weird issues with Dozer and Websphere. We get errors almost like it's sharing data between two different objects.

     
  • dmitry (lv)

    dmitry (lv) - 2009-09-10

    You have run on this issue if you are getting OutOfMemory exception for Perm Space in your WebSphere. Like said it happens after several redeployments. Otherwise latest Dozer version works fine in WebSphere.

     
  • dmitry (lv)

    dmitry (lv) - 2010-01-04

    Using java.lang.SoftReference to keep Methods cached. Should solve ClassLoader leak problem

     
  • dmitry (lv)

    dmitry (lv) - 2010-01-04
    • assigned_to: nobody --> buzdin
    • status: open --> closed-fixed
     

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks