Instalar AEM 6.3, SP1 y CFP2
Problema
Durante la prueba de esfuerzo de la búsqueda de activos de Asset Share Commons [1], se produjo una fuga de memoria o un problema de objeto no resuelto.
Procedimiento:
-
-
Instalación de asset-share-commons.ui.apps-1.1.2.zip (ocurre incluso en 1.4.0)
-
Instalación de asset-share-commons.ui.content-1.1.2.zip (ocurre incluso en 1.4.0)
-
Creación de una página "plantilla de búsqueda" en Asset Share Commons, en Sitios
-
Ejecute "Buscar" con cualquier palabra, incluso en blanco, cientos de veces.
-
O ejecute este comando:
# 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"
Incluso después de Full Java GC, algunos objetos no se pueden liberar.
# 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
Un análisis de volcado en memoria indica que el sospechoso es org.apache.sling.models.impl.ModelAdapterFactory cargado por org.apache.felix.framework.BundleWiringImpl$BundleClassLoaderJava5 [2].
- https://github.com/Adobe-Marketing-Cloud/asset-share-commons
- Una instancia de "org.apache.sling.models.impl.ModelAdapterFactory" cargada por "org.apache.felix.framework.BundleWiringImpl$BundleClassLoaderJava5 @ 0x9749d5d0" ocupa 1.528.764.960 (78,49%) bytes. La memoria se acumula en una instancia de "org.apache.sling.models.impl.ModelAdapterFactory" cargada por "org.apache.felix.framework.BundleWiringImpl$BundleClassLoaderJava5 @ 0x9749d5d0".
Palabras clave
org.apache.sling.models.impl.ModelAdapterFactory
org.apache.felix.framework.BundleWiringImpl$BundleClassLoaderJava5 @ 0x9749d5d0
Entorno
AEM 6.3 SP1-CFP2 con Asset Share Commons 1.1.2 y versiones anteriores.
Causa
Hubo un problema en Asset Share Commons. La búsqueda de QueryBuilder crea ResourceResolver no cerrado.
Resolución
Actualizar Asset Share Commons a la versión 1.1.4 o posterior.