Dear Wiki user, You have subscribed to a wiki page or wiki category on "Tomcat Wiki" for change notification.
The "FAQ/Deployment" page has been changed by KonstantinKolinko: http://wiki.apache.org/tomcat/FAQ/Deployment?action=diff&rev1=9&rev2=10 Comment: More details on PermGen leaks <<Anchor(Q2)>>'''Why does the memory usage increase when I redeploy a web application?''' + That is because your web application has a memory leak. + - Because the Classloader (and the Class objects it loaded) cannot be recycled. They are stored in the permanent heap generation by the JVM, and when you redeploy a new class loader is created, which loads another copy of all these classes. This can cause {{{OufOfMemoryErrors}}} eventually. + A common issue are "!PermGen" memory leaks. They happen because the Classloader (and the Class objects it loaded) cannot be recycled unless some requirements are met (*). They are stored in the permanent heap generation by the JVM, and when you redeploy a new class loader is created, which loads another copy of all these classes. This can cause {{{OufOfMemoryErrors}}} eventually. + + (*) The requirement is that all classes loaded by this classloader should be able to be gc'ed at the same time. + + Starting with Tomcat 6.0.25 there is a tool in the Manager webapp to help diagnose such misbehaving applications. See [[FAQ/Memory]] and [[MemoryLeakProtection]]. ---- - [[CategoryFAQ|CategoryFAQ]] + [[CategoryFAQ]] --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org