Comment exécuter une vérification de cohérence de magasin de données via oak-run

Découvrez comment exécuter une vérification de cohérence de banque de données via oak-run dans Adobe Experience Manager.

Description description

Environnement

Adobe Experience Manager (AEM)

Problème

La vérification de la cohérence de l’entrepôt de données signale les fichiers binaires d’entrepôt de données manquants, mais encore référencés. La vérification de cohérence peut être déclenchée directement par la console Felix.

Il peut être déclenché à partir de MarkSweepGarbageCollector#checkConsistency Mbean.

Si la variable BlobGC MBeans sont enregistrés dans la variable MBeanServer puis les éléments suivants mbean peut également être utilisé :

BlobGCMbean#checkConsistency

Une fois la vérification de cohérence terminée, un message affiche le nombre de fichiers binaires signalés comme manquants. Si le nombre est supérieur à 0(zero), vérifiez les journaux configurés pour org.apache.jackrabbit.oak.plugins.blob .MarkSweepGarbageCollector pour plus d’informations sur les fichiers binaires manquants.

Vous trouverez ci-dessous un exemple de la manière dont les fichiers binaires manquants sont signalés dans les journaux :

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

Contrairement à la variable /system/console/repositorycheck Dans l’interface utilisateur, l’outil oak-run vérifie les fichiers d’index Lucene masqués sous /oak: index en plus du reste des chemins d’accès au contenu. datastorecheck de oak-run peut être utilisé pour exécuter une vérification de cohérence sur la banque de données.  Les étapes détaillées pour exécuter la commande sont présentées ci-dessous :

Résolution resolution

  1. Téléchargez oak-run jar 1.8.8 ou version ultérieure sur votre serveur AEM.

  2. Placez le fichier oak run jar dans le répertoire où crx-quickstart est placé , sinon fournissez le chemin d’accès complet de oak-run-*.jar lors de l’exécution de la commande ci-dessous.

  3. Exécutez la commande ci-dessous (mettez à jour les chemins d’accès à l’entrepôt de segments et à la banque de données en fonction de votre environnement) :

    code language-none
    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. La commande génère une vérification de cohérence du magasin de données.

Le vérificateur de cohérence du magasin de données peut également être utilisé pour répertorier toutes les références d’objets Blob dans le magasin de nœuds et tous les identifiants d’objets Blob disponibles dans le magasin de données. Utilisez la commande suivante :

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

[ --store |] \

[ --s3ds |--fds] \

[ --dump] \

[ --track]

Fournissez une ou plusieurs des options suivantes :

—id : répertorie tous les identifiants de l’entrepôt de données.

—ref : répertorie toutes les références d’objets Blob dans le magasin de noeuds.

—consistency : Liste tous les objets Blob manquants en effectuant une vérification de cohérence.

Les options suivantes sont facultatives :

—store - Chemin d’accès au magasin de segments de mongo uri (Obligatoire pour les options —ref et —consistency ci-dessus).

—dump : chemin d’accès où vider les fichiers (facultatif). Dans le cas contraire, les fichiers sont vidés dans le répertoire tmp de l’utilisateur.

—s3ds - Chemin d’accès au fichier de configuration S3DataStore.

—fds - Chemin d’accès au fichier de configuration FileDataStore (la propriété 'path' est obligatoire).

—track - Chemin du dossier d’accueil du référentiel local (facultatif). Cela place une copie des identifiants d’objets blob téléchargés à suivre.

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