ProductAssetListener puede causar SegmentNotFoundException y problemas de rendimiento

Este problema se ha corregido con AEM 6.5.8. AEM Para la versión 6.4.6 o posterior, deshabilitar el componente OSGi com.adobe.cq.commerce.impl.asset.ProductAssetListener es una solución.

Descripción description

Entorno

Adobe Experience Manager (AEM)

Problema

AEM AEM AEM ProductAssetListener puede causar SegmentNotFoundException y problemas de rendimiento en las versiones 6.5.6, 6.5.7 y 6.4.6 o posterior de la.

El típico mensaje de error de SegmentNotFoundException por este problema contiene el seguimiento de pila como el siguiente.

*ERROR* [ sling-oak-observed-4] org.apache.jackrabbit.oak.segment.SegmentNotFoundExceptionListener
Segmento no encontrado: 6376814a-9273-4df8-aedd-ec5e6eb7ab52. SegmentId age=238801954ms,segment-generation=GCGeneration

org.apache.jackrabbit.oak.segment.SegmentNotFoundException: Segmento 6376814a-9273-4df8-aedd-ec5e6eb7ab52 no encontrado

en com.adobe.cq.commerce.impl.asset.ProductAssetListener.onEvent(ProductAssetListener.java:153)

Los problemas de rendimiento pueden ser lentitud, falta de respuesta y retraso/bloqueo de la cola de replicación. Cuando comienza el problema, aparece el siguiente mensaje en error.log.

*WARN* [ sling-oak-observed-4] com.adobe.cq.commerce.impl.asset.ProductAssetListener NODE_MOVED event
para /content/dam/< asset> /< metadata>  no tiene la información de evento necesaria

Los volcados de procesos durante la emisión contienen un subproceso de observación de Sling-Oak con ProductAssetListner que se ejecuta de forma agresiva.

"sling-oak-observed-4" prio=5 tid=0xd7 nid=0xffffff ejecutable

                en com.adobe.cq.commerce.impl.asset.ProductAssetListener.onEvent(ProductAssetListener.java:153)

Resolución resolution

Este problema se ha corregido con AEM 6.5.8.

Notas de la versión del paquete de servicio más reciente de Adobe Experience Manager 6.5

La actualización de la referencia de activos del producto hace que los hilos de replicación estén en estado de espera hasta que el hilo ProductAssetListener complete sus confirmaciones en el JCR (NPR-35269).

Para AEM 6.4.6+, desactivar el componente com.adobe.cq.commerce.impl.asset.ProductAssetListener OSGi es una solución. AEM Para ello, puede usar el desactivador de componentes OSGi en ACS Commons.

Cómo configurar el desactivador de componentes:

  1. En CRX/DE, cree un nodo sling:OSGiConfig como /apps/<your project>/config/com.adobe.acs.commons.util.impl.ComponentDisabler

  2. Agregar una propiedad de String[ ] con name = "components", value = [ "com.adobe.cq.commerce.impl.asset.ProductAssetListener" ]

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f