-
Notifications
You must be signed in to change notification settings - Fork 305
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[FISH-1018] Out of memory redeploy leaks #5081
[FISH-1018] Out of memory redeploy leaks #5081
Conversation
- this could be the first cause of leak
…lasses - anonymous and inner holds implicit reference to parent - this was probably the second cause of leak
jenkins test |
Looks good. Will test it with class loader leak tester (in appserver/tests/payara-samples) to see if it works |
Unfortunately, leak tester does not pass, more work needs to be done to determine additional classloader leaks |
|
ed74d0e
to
99ed6c8
Compare
Tested and before fix count is rising very rapidly. After fix count of classloaders is flipping between 7 and 10. Before:
After:
|
I have double checked results and I can't see any additional classloader leak. |
I think the issue is in anonymous inner classes that are part of the WebappClassLoader, I have not had a chance to look any deeper in to this but I think that's the main issue |
- making sure Server Threads and Timers do not inherit app's context class loaders - making sure app's security contexts don't get propagated to server threads and timers Added correct ear classes to class loader leak tests
jenkins test |
* [FISH-1018] Out of memory redeploy leaks (#5081) * #4098 Reduced too broad scope of variable * #4098 Moved field to local variable - this could be the first cause of leak * #4098 Refactored inner and anonymous classes to nested static classes - anonymous and inner holds implicit reference to parent - this was probably the second cause of leak * #4098 Fixed code consistency * Fix more class loader leaks by: - making sure Server Threads and Timers do not inherit app's context class loaders - making sure app's security contexts don't get propagated to server threads and timers Added correct ear classes to class loader leak tests Co-authored-by: lprimak <lenny@flowlogix.com> * [FISH-1018] found more leaks and more reliable leak test (#5102) * found more leaks and more reliable leak test * bump jakarta.el to -p3 patch * tyrus patched update Co-authored-by: Lukáš Kvídera <kvideral@qwsome.eu>
Fixes #4098
Description
There were multiple causes:
Important Info
Blockers
Testing
New tests
Testing Performed
Testing Environment
Documentation
Notes for Reviewers
Leak in Globals I left untouched.