L’attività DataStore GarbageCollection non riesce con un errore
Scopri come superare gli errori delle attività GarbageCollection di DataStore rimuovendo l’ID dell’archivio registrato.
Descrizione description
Ambiente
Adobe Experience Manager (AEM)
Problema/Sintomi
DataStoreGarbageCollectionTask non riesce e viene restituito il seguente errore:
*ERROR* [ sling-oak-observation-19] org.apache.jackrabbit.oak.plugins.blob.MarkSweepGarbageCollector Not all repositories have marked
references available : [ e0fb2a15-d5d5-4013-9607-0fb89cf87c94]
26.07.2022 20:56:50.737 *ERROR* [ sling-oak-observation-19] org.apache.jackrabbit.oak.plugins.blob.MarkSweepGarbageCollector Blob garbage collection error
java.io.IOException: Not all repositories have marked references available
at org.apache.jackrabbit.oak.plugins.blob.MarkSweepGarbageCollector$GarbageCollectionType$1.mergeAllMarkedReferences(MarkSweepGarbageCollector.java:7
22) [ org.apache.jackrabbit.oak-blob-plugins:1.8.21]
at org.apache.jackrabbit.oak.plugins.blob.MarkSweepGarbageCollector.sweep(MarkSweepGarbageCollector.java:384) [ org.apache.jackrabbit.oak-blob-plugins
:1.8.21]
at org.apache.jackrabbit.oak.plugins.blob.MarkSweepGarbageCollector.markAndSweep(MarkSweepGarbageCollector.java:284) [ org.apache.jackrabbit.oak-blob-
plugins:1.8.21]
at org.apache.jackrabbit.oak.plugins.blob.MarkSweepGarbageCollector.collectGarbage(MarkSweepGarbageCollector.java:191) [ org.apache.jackrabbit.oak-blo
b-plugins:1.8.21]
at org.apache.jackrabbit.oak.plugins.blob.BlobGC$1.call(BlobGC.java:87) [ org.apache.jackrabbit.oak-blob-plugins:1.8.21]
at org.apache.jackrabbit.oak.plugins.blob.BlobGC$1.call(BlobGC.java:83) [ org.apache.jackrabbit.oak-blob-plugins:1.8.21]
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
26.07.2022 20:56:51.620 *ERROR* [ pool-20-thread-1] org.apache.jackrabbit.oak.commons.jmx.ManagementOperation Blob garbage collection failed
java.io.IOException: Not all repositories have marked references available
at org.apache.jackrabbit.oak.plugins.blob.MarkSweepGarbageCollector$GarbageCollectionType$1.mergeAllMarkedReferences(MarkSweepGarbageCollector.java:7
22) [ org.apache.jackrabbit.oak-blob-plugins:1.8.21]
at org.apache.jackrabbit.oak.plugins.blob.MarkSweepGarbageCollector.sweep(MarkSweepGarbageCollector.java:384) [ org.apache.jackrabbit.oak-blob-plugins
:1.8.21]
at org.apache.jackrabbit.oak.plugins.blob.MarkSweepGarbageCollector.markAndSweep(MarkSweepGarbageCollector.java:284) [ org.apache.jackrabbit.oak-blob-
plugins:1.8.21]
at org.apache.jackrabbit.oak.plugins.blob.MarkSweepGarbageCollector.collectGarbage(MarkSweepGarbageCollector.java:191) [ org.apache.jackrabbit.oak-blo
b-plugins:1.8.21]
at org.apache.jackrabbit.oak.plugins.blob.BlobGC$1.call(BlobGC.java:87) [ org.apache.jackrabbit.oak-blob-plugins:1.8.21]
at org.apache.jackrabbit.oak.plugins.blob.BlobGC$1.call(BlobGC.java:83) [ org.apache.jackrabbit.oak-blob-plugins:1.8.21]
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
26.07.2022 20:56:51.628 *INFO* [ pool-20-thread-1] com.adobe.granite.maintenance.impl.MaintenanceJobsManagerImpl Name='DataStoreGarbageCollectionTask', Status
='ERROR', Result='Data store GC: Operation failed Blob garbage collection failed: Not all repositories have marked references available', Details='{"created"
:1658858205603,"started":1658858205603,"finished":1658858211620,"duration":6017}'
Risoluzione resolution
Questo problema potrebbe verificarsi se disponevi di un’istanza precedente che utilizzava l’archivio dati, che è stata eliminata e una nuova istanza creata per utilizzare l’archivio dati.
Il problema può essere risolto dopo la rimozione dell’ID archivio registrato nell’archivio dati. Il catalogo globale dell’archivio BLOB deve essere completato correttamente.
Guida dettagliata:
1)Vai al percorso dell'archivio dati <
aem-install-folder>
/crx-quickstart/repository/datastore e cerca l'ID archivio e0fb2a15-d5d5-4013-9607-0fb89cf87c94 (dovrebbe essere lo stesso di quello indicato in error.log ERROR* [
sling-oak-observation-19]
org.apache.jackrabbit.oak.plugins.blob.MarkSweepGarbage Agente di raccolta Non tutti gli archivi sono stati contrassegnati
riferimenti disponibili: [
e0fb2a15-d5d5-4013-9607-0fb89cf87c94]
), si avrà un file di riferimento con questo nome, basta eliminare quel file di riferimento (ripetere questi passaggi se ci sono più file).
2)Eseguire nuovamente il catalogo globale e verificare se il problema è risolto.