DataStore GarbageCollection任务失败并出现错误
了解如何通过删除已注册的存储库ID来克服DataStore GarbageCollection任务错误。
描述 description
环境
Adobe Experience Manager (AEM)
问题/症状
DataStoreGarbageCollectionTask失败,出现以下错误:
*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}'
解决方法 resolution
如果您之前有一个使用数据存储的实例,该实例已销毁,并且创建了新实例来使用该数据存储,则可能会发生此问题。
删除在数据存储中注册的存储库ID后,可以解决此问题。 然后,Blob存储GC应会成功完成。
分步指南:
1)转到数据存储路径 < aem-install-folder> /crx-quickstart/repository/datastore并搜索存储库ID e0fb2a15-d5d5-4013-9607-0fb89cf87c94(它应该与error.log ERROR* [ sling-oak-observation-19] org.apache.jackrabbit.oak.plugins.blob.blob.MarkGarbageCollearCollectorAllNotAllCollectorAllNot存储库已标记
可用的引用: [ e0fb2a15-d5d5-4013-9607-0fb89cf87c94] ), 您将有一个使用此名称的引用文件,只需删除该引用文件(如果有多个文件,请重复这些步骤)。
2)再次运行GC并检查它是否解决了该问题。
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f