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 :
Télécharger oak-run jar version 1.8.8 ou ultérieure sur votre serveur AEM.
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 .
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
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 :
--store
mongo - 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.