Installieren Sie AEM6.3, SP1 und CFP2
Problem
Während des Stresstests der Asset-Suche von Asset Share Commons [1] trat ein Memory Leak oder ein ungelöstes Objektproblem auf.
Schritte zur Reproduzierung:
-
-
Installieren Sie asset-share-commons.ui.apps-1.1.2.zip (auch unter 1.4.0)
-
Installieren Sie asset-share-commons.ui.content-1.1.2.zip (auch unter 1.4.0)
-
Erstellen Sie eine Seite „search template“ auf „Asset Share Commons“ auf Sites
-
Führen Sie „Suchen“ mit einem beliebigen Wort, einschließlich Leerzeichen, einige hundert Malaus.
-
Oder führen Sie diesen Befehl aus:
# ab -n 100 -c 1 -A admin:admin "http://localhost:4502/content/asset-share-commons/en/light/searchtestpage.html?layout=card&p.offset=0&p.limit=24"
Selbst nach einer Full Java GC können einige Objekte nicht freigegeben werden.
# jcmd 1810 GC.class_histogram | grep AssetResult 505: 169 6760 com.adobe.aem.commons.assetshare.search.results.impl.result.AssetResultImpl
# jcmd 1810 GC.class_histogram | grep AssetResult 189: 1608 64320 com.adobe.aem.commons.assetshare.search.results.impl.result.AssetResultImpl
Eine Heapdump-Analyse weist auf folgende Problemstelle hin: org.apache.sling.models.impl.ModelAdapterFactory, geladen von org.apache.felix.framework.BundleWiringImpl $ BundleClassLoaderJava5 [2].
- https://github.com/Adobe-Marketing-Cloud/asset-share-commons
- Eine Instanz von "org.apache.sling.models.impl.ModelAdapterFactory", geladen von "org.apache.felix.framework.BundleWiringImpl$BundleClassLoaderJava5 @ 0x9749d5d0", nimmt 1.528.764.960 Byte (78,49%) in Anspruch. Der Speicher ist in einer Instanz von "org.apache.sling.models.impl.ModelAdapterFactory" aggregiert, die geladen wird durch "org.apache.felix.framework.BundleWiringImpl$BundleClassLoaderJava5 @ 0x9749d5d0".
Keywords
org.apache.sling.models.impl.ModelAdapterFactory
org.apache.felix.framework.BundleWiringImpl$BundleClassLoaderJava5 @ 0x9749d5d0
Umgebung
AEM 6.3 SP1-CFP2 mit Asset Share Commons 1.1.2 und älteren Versionen.
Ursache
In Asset Share Commons ist ein Problem aufgetreten. Die QueryBuilder-Suche erstellt ungeschlossene ResourceResolver.
Lösung
Aktualisieren Sie Asset Share Commons auf Version 1.1.4 oder höher.