Apache Sling ClassLoader Leak Detector

Clone this repo:
  1. a377366 SLING-11051 - Fixing JavaDoc badge by Dan Klco · 7 months ago master
  2. 0c0ba12 SLING-10676 - remove SECURITY.md which is not needed by Bertrand Delacretaz · 1 year, 1 month ago
  3. 2068c00 SLING-10676 - add or update SECURITY.md by Bertrand Delacretaz · 1 year, 1 month ago
  4. f7ec8ad SLING-10676 - add or update SECURITY.md by Bertrand Delacretaz · 1 year, 1 month ago
  5. 0dabec6 Adding sonarqube badges as per SLING-9682 by Dan Klco · 2 years ago

Apache Sling

Build Status Coverage Sonarcloud Status JavaDoc Maven Central Contrib License

Apache Sling ClassLoader Leak Detector

This module is part of the Apache Sling project.

This bundle provides support for tracing classloader leaks which occur due to improper cleanup in bundles. Refer to SLING-3359 for background details.

The bundle registers a Felix Configuration Printer which dumps out a list of suspected classloaders which are not getting garbage collected. It can be accessed at http://localhost:8080/system/console/status-leakdetector

Possible classloader leak detected
Number of suspicious bundles - 1

* org.apache.sling.sample.leakdetector.bad-bundle (0.0.1.SNAPSHOT) - Classloader Count [2]
     - Bundle Id - 204
     - Leaked classloaders
         - Identity HashCode - 4a273519, Creation time 31.01.2014 15:22:58.407

JVM Arguments

By default on Oracle JDK the classloaders and related classes from Permgen are not garbage collected by default. This bundle relies on classloaders getting garbage collected for it work. So to enable that pass on following arguments

 -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled