Resolver SegmentNotFoundException durante la sincronización del flujo de trabajo en AEM Forms 6.5

Este artículo explica cómo abordar los errores de sincronización de flujo de trabajo y SegmentNotFoundException que pueden producirse en Adobe Experience Manager (AEM) Forms 6.5 después del mantenimiento programado, especialmente cuando la compactación completa del repositorio se superpone con las operaciones de escritura pesadas.

Descripción description

Entorno

Adobe Experience Manager (AEM) Forms 6.5 (OSGi, independiente)

Problema/Síntomas

  • La sincronización del flujo de trabajo falla o falta después del mantenimiento programado.
  • Los envíos de formularios y flujos de trabajo no pueden continuar durante el periodo afectado.
  • El problema se resuelve automáticamente después de un tiempo.
  • El siguiente error aparece en los registros de los trabajos de flujo de trabajo afectados: org.apache.jackrabbit.oak.segment.SegmentNotFoundException
  • El problema es específico de los días en que se ejecuta una compactación completa, no durante operaciones de mantenimiento más ligeras.

Causa

Este problema se produce porque el proceso de compactación completo reclama los archivos TAR de generación antigua a los que siguen haciendo referencia los trabajos de flujo de trabajo activos. Si las operaciones de escritura pesadas (como una sincronización LDAP completa) se superponen con la compactación completa, se eliminan los segmentos requeridos por los flujos de trabajo en curso, lo que da como resultado SegmentNotFoundException errores.

Resolución resolution

Siga estos pasos para resolver este problema:

  1. Valide el procedimiento en un entorno inferior (que no sea de producción) para comprender los comandos, el resultado esperado y el proceso general.

  2. Antes de realizar cambios en la producción, realice una copia de seguridad completa y coherente o una instantánea del repositorio.

  3. Realice una comprobación de coherencia del repositorio con la herramienta oak-run:

    1. Asegúrese de que la instancia de AEM esté sin conexión antes de ejecutar operaciones de nivel de repositorio.

    2. Ejecute el siguiente comando (reemplace <path-to-oak-run.jar> y <path-to-repository> por sus rutas reales):

      java -jar <path-to-oak-run.jar> check <path-to-repository>

    3. Ejecute el análisis con una copia de seguridad del repositorio de producción si es posible para minimizar el tiempo de inactividad.

  4. Revise y ajuste la programación de la sincronización LDAP y las tareas de compactación completas para evitar superposiciones, especialmente durante operaciones de escritura alta. Considere ejecutar la compactación completa en un momento diferente o asegurarse de que no se produzcan operaciones de escritura pesadas durante la compactación.

  5. Después de implementar los cambios, monitorice la ejecución del flujo de trabajo y los registros para detectar cualquier repetición de SegmentNotFoundException errores:

  6. Compruebe los registros de flujo de trabajo y error.log de AEM para el patrón SegmentNotFoundException.

  7. Si los problemas persisten, repita la comprobación de coherencia y revise la programación de tareas para realizar más ajustes.

recommendation-more-help
experience-cloud-kcs-help-kbarticles