Cómo ejecutar una comprobación de consistencia del almacén de datos a través de oak-run

Última actualización: 2024-01-30

Aprenda a ejecutar una comprobación de consistencia del almacén de datos a través de oak-run en Adobe Experience Manager.

Descripción

Entorno

Adobe Experience Manager (AEM)

Problema

La comprobación de coherencia del almacén de datos informará de cualquier binario del almacén de datos que falte, pero al que aún se haga referencia. La comprobación de coherencia se puede activar directamente mediante la consola Felix.

Se puede activar desde MarkSweepGarbageCollector#checkConsistency Mbean.

Si la variable BlobGC MBeans están registrados en la MBeanServer a continuación, lo siguiente mbean también se puede utilizar:

BlobGCMbean#checkConsistency

Una vez completada la comprobación de coherencia, un mensaje mostrará el número de binarios notificados como faltantes. Si el número es mayor que 0(zero), compruebe los registros configurados para org.apache.jackrabbit.oak.plugins.blob .MarkSweepGarbageCollector para obtener más información sobre los binarios que faltan.

A continuación se muestra un ejemplo de cómo se informan los binarios que faltan en los registros:

11:32:39.673 INFO [ main]  MarkSweepGarbageCollector.java:600 Consistency check found 1 missing blobs 11:32:39.673 WARN [ main]  MarkSweepGarbageCollector.java:602 Consistency check failure in the the blob store : DataStore backed BlobStore [ org.apache.jackrabbit.oak.plugins.blob.datastore.OakFileDataStore] , check missing candidates in file /tmp/gcworkdir-1467352959243/gccand-1467352959243

A diferencia del /system/console/repositorycheck IU, la herramienta oak-run comprueba los archivos de índice lucene ocultos en /oak: index además del resto de las rutas de contenido. datastorecheck orden de oak-run se puede utilizar para ejecutar una comprobación de coherencia en el almacén de datos.  Los pasos detallados sobre cómo ejecutar el comando se detallan a continuación:

Resolución

  1. AEM Descargue Oak-run JAR 1.8.8 o versiones posteriores en su servidor de la.

  2. Coloque el jar de ejecución de Oak en el mismo directorio donde crx-quickstart se coloca; de lo contrario, proporcione la ruta completa de oak-run-*.jar mientras se ejecuta el siguiente comando.

  3. Ejecute el siguiente comando (actualice las rutas al almacén de segmentos y al almacén de datos según su entorno):


    java -jar oak-run-*.jar datastorecheck --consistency --ref --id --fds crx-quickstart/install/org.apache.jackrabbit.oak.plugins.blob.datastore.FileDataStore.config --repoHome crx-quickstart/repository --store crx-quickstart/repository/segmentstore --dump temp --verbose --track
    
  4. El comando debería emitir una comprobación de consistencia del almacén de datos.

El verificador de consistencia para el almacén de datos también puede usarse para listar todas las referencias de blob en el almacén de nodos y todos los ids de blob disponibles en el almacén de datos. Utilice el siguiente comando:

$ java-jar oak-run-*.jar datastorecheck [ --id] [ --ref] [ --consistency] \

[ --store |] \

[ --s3ds |--fds] \

[ --dump] \

[ --track]

Proporcione una o más de estas opciones disponibles:

—id: enumera todos los ID del almacén de datos.

—ref: enumera todas las referencias de blob en el almacén de nodos.

—consistency: enumera todos los blobs que faltan con una comprobación de coherencia.

Las siguientes opciones son opcionales:

—store: ruta al almacén de segmentos de mongo uri (obligatorio para las opciones —ref y —consistency de arriba).

—dump: ruta de acceso donde deben quedar los archivos (opcional). En caso contrario, los archivos se vuelcan en el directorio tmp del usuario.

—s3ds: ruta al archivo de configuración S3DataStore.

—fds: ruta al archivo de configuración FileDataStore (la propiedad "path" es obligatoria).

—track: ruta de la carpeta principal del repositorio local (opcional). Coloca una copia de los blob ids descargados para su rastreo.

En esta página