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

Dernière mise à jour : 2022-11-15

Description

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

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

Si la variable BlobGC Les MBeans sont enregistrés dans la variable MBeanServer puis le mbean suivant 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, 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 au /system/console/repositorycheck l’interface utilisateur, oak-run L’outil 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

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

  2. Placez le oak-run jar dans le même répertoire où crx-quickstart est placé , sinon indiquez le chemin d’accès complet de oak-run-*.jar lors de l’exécution sous la commande .

  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) :

    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épertoriez tous les identifiants du magasin de données.

    • --ref - Répertoriez toutes les références d’objets Blob dans le magasin de nœuds.

    • --consistency - Répertoriez tous les objets Blob manquants en effectuant une vérification de cohérence.

    Les options suivantes sont facultatives :

    • --storemongo - Chemin d’accès au magasin de segments de l’URI (requis pour les options --ref et --consistency ci-dessus).

    • --dump - Chemin d’accès où vider les fichiers (facultatif). Sinon, les fichiers sont vidés dans l’utilisateur. tmp répertoire .

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

    • --fds - Chemin d’accès au FileDataStore fichier de configuration (path est obligatoire).

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

Sur cette page