Eseguire una verifica di coerenza dell’archivio dati tramite oak-run

Descrizione

Il controllo di coerenza dell'archivio dati segnalerà tutti i file binari dell'archivio dati mancanti ma a cui si fa ancora riferimento. Il controllo di coerenza può essere attivato direttamente da Felix console.

Potrebbe essere attivato da MarkSweepGarbageCollector#checkConsistency Fagiolo

Se la BlobGC MBeans sono registrati nel MBeanServer allora si possono usare anche i seguenti fagioli:

BlobGCMbean#checkConsistency

Al termine del controllo di coerenza, un messaggio mostra il numero di binari segnalati come mancanti. Se il numero è maggiore di 0, controlla i registri configurati per org.apache.jackrabbit.oak.plugins.blob .MarkSweepGarbageCollector per maggiori dettagli sui binari mancanti.

Di seguito è riportato un esempio di come i file binari mancanti vengono segnalati nei log:

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 differenza di /system/console/repositorycheck Interfaccia utente oak-run lo strumento controlla i file di indice lucene nascosti in /oak: index oltre al resto dei percorsi di contenuto. datastorecheck comando oak-run può essere utilizzato per eseguire un controllo di coerenza sull’archivio dati.  I passaggi dettagliati su come eseguire il comando sono descritti di seguito:

Risoluzione

  1. Scarica oak-run jar 1.8.8 o versione successiva al server AEM.

  2. Posiziona il oak-run jar nella stessa directory in cui si trova crx-quickstart altrimenti fornire il percorso completo di oak-run-*.jar durante l'esecuzione del comando sottostante.

  3. Esegui il comando seguente (aggiorna i percorsi al segmentstore e al datastore in base al tuo ambiente):

    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. Il comando genera una verifica di coerenza dell’archivio dati.

    Lo strumento di verifica della coerenza per l’archivio dati può anche essere utilizzato per elencare tutti i riferimenti BLOB nell’archivio nodi e tutti gli ID BLOB disponibili nell’archivio dati. Utilizza il comando seguente:

    $ java-jar oak-run-*.jar datastorecheck --id --ref --consistency \
    --store | \
    --s3ds |--fds \
    --dump \
    --track
    

    Fornisci una o più tra le seguenti opzioni disponibili:

    • --id: elenca tutti gli ID nell’archivio dati.

    • --ref: elenca tutti i riferimenti BLOB nell’archivio nodi.

    • --consistency: elenca tutti i BLOB mancanti effettuando una verifica di coerenza.

    Le opzioni seguenti sono facoltative:

    • --storemongo: percorso dell’archivio segmenti di uri (obbligatorio per le opzioni --ref e --consistency di cui sopra).

    • --dump: percorso in cui scaricare i file (facoltativo). In caso contrario, i file vengono scaricati nell'utente tmp directory.

    • --s3ds - Percorso del S3DataStore file di configurazione.

    • --fds - Percorso del FileDataStore file di configurazione (path (obbligatorio).

    • --track: percorso della cartella principale dell’archivio locale (facoltativo). Inserisce una copia degli ID BLOB scaricati da tracciare.

In questa pagina