From 29c00ebdf565378f69655f5bc6de34b2861a23b7 Mon Sep 17 00:00:00 2001 From: Jan Bartel Date: Thu, 24 Dec 2020 15:29:31 +0100 Subject: [PATCH] Issue #5725 Review preventers. (#5839) Note that any Preventer that is documented as being fixed prior to jdk11 should be deleted from jetty-10/11 when this change is merged through. Signed-off-by: Jan Bartel --- .../org/eclipse/jetty/util/preventers/DOMLeakPreventer.java | 3 +++ .../eclipse/jetty/util/preventers/GCThreadLeakPreventer.java | 3 +++ .../eclipse/jetty/util/preventers/Java2DLeakPreventer.java | 4 ++++ .../org/eclipse/jetty/util/preventers/LDAPLeakPreventer.java | 3 +++ .../util/preventers/LoginConfigurationLeakPreventer.java | 2 ++ .../jetty/util/preventers/SecurityProviderLeakPreventer.java | 3 +++ 6 files changed, 18 insertions(+) diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/DOMLeakPreventer.java b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/DOMLeakPreventer.java index 99f916faa990..564755b4ae72 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/DOMLeakPreventer.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/DOMLeakPreventer.java @@ -30,7 +30,10 @@ * * Note that according to the bug report, a heap dump may not identify the GCRoot, making * it difficult to identify the cause of the leak. + * + * @deprecated reported as fixed in jdk 7, see https://bugs.java.com/bugdatabase/view_bug.do?bug_id=6916498 */ +@Deprecated public class DOMLeakPreventer extends AbstractLeakPreventer { diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/GCThreadLeakPreventer.java b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/GCThreadLeakPreventer.java index ef1641acaa52..ff339e65cbd0 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/GCThreadLeakPreventer.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/GCThreadLeakPreventer.java @@ -34,7 +34,10 @@ * RMI. * * Inspired by Tomcat JreMemoryLeakPrevention. + * + * @deprecated fixed in jdvm 9b130, see https://bugs.java.com/bugdatabase/view_bug.do?bug_id=JDK-8157570 */ +@Deprecated public class GCThreadLeakPreventer extends AbstractLeakPreventer { diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/Java2DLeakPreventer.java b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/Java2DLeakPreventer.java index f44310510b89..3fdb32e999c9 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/Java2DLeakPreventer.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/Java2DLeakPreventer.java @@ -25,7 +25,11 @@ * before webapp classloaders are created. * * See https://issues.apache.org/bugzilla/show_bug.cgi?id=51687 + * + * @deprecated fixed in jdk 9, see https://bugs.java.com/bugdatabase/view_bug.do?bug_id=6489540 + * */ +@Deprecated public class Java2DLeakPreventer extends AbstractLeakPreventer { diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/LDAPLeakPreventer.java b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/LDAPLeakPreventer.java index 395684f3a370..267c827ffbc7 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/LDAPLeakPreventer.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/LDAPLeakPreventer.java @@ -27,7 +27,10 @@ * load the LdapPoolManager. * * Inspired by Tomcat JreMemoryLeakPrevention + * + * @deprecated fixed in jdk 8u192 */ +@Deprecated public class LDAPLeakPreventer extends AbstractLeakPreventer { diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/LoginConfigurationLeakPreventer.java b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/LoginConfigurationLeakPreventer.java index 4365e4e59e5b..e3f6be132f90 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/LoginConfigurationLeakPreventer.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/LoginConfigurationLeakPreventer.java @@ -26,7 +26,9 @@ * that by invoking the classloading here. * * Inspired by Tomcat JreMemoryLeakPrevention + * @deprecated classloader does not seem to be held any more */ +@Deprecated public class LoginConfigurationLeakPreventer extends AbstractLeakPreventer { diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/SecurityProviderLeakPreventer.java b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/SecurityProviderLeakPreventer.java index 3ca736ef1b51..f990850b2dae 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/SecurityProviderLeakPreventer.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/preventers/SecurityProviderLeakPreventer.java @@ -28,7 +28,10 @@ * is not a webapp classloader. * * Inspired by Tomcat JreMemoryLeakPrevention + * + * @deprecated sun.security.pkcs11.SunPKCS11 class explicitly sets thread classloader to null */ +@Deprecated public class SecurityProviderLeakPreventer extends AbstractLeakPreventer {