如何透過 Oak-run 執行資料存放區一致性檢查

瞭解如何透過Adobe Experience Manager中的Oak-run執行資料存放區一致性檢查。

說明 description

環境

Adobe Experience Manager (AEM)

問題

資料存放區一致性檢查會報告任何遺失但仍被參考的資料存放區二進位檔。 一致性檢查可由Felix主控台直接觸發。

可從MarkSweepGarbageCollector#checkConsistency Mbean觸發。

如果BlobGC MBeans已在MBeanServer中註冊,則也可以使用下列mbean

BlobGCMbean#checkConsistency

一致性檢查完成後,訊息會顯示回報為遺失的二進位檔數目。 如果數字大於​ 0(zero),請檢查為org.apache.jackrabbit.oak.plugins.blob .MarkSweepGarbageCollector設定的記錄檔,以取得有關遺失二進位檔的詳細資料。

以下是如何在記錄中報告遺失的二進位檔的範例:

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

不像/system/console/repositorycheck UI,除了其餘的內容路徑之外,Oak-run工具還會檢查/oak: index下隱藏的lucene索引檔案。 oak-rundatastorecheck命令可用於對資料存放區執行一致性檢查。  如何執行命令的詳細步驟詳述如下:

解決方法 resolution

  1. 下載Oak-run jar 1.8.8或更高版本到您的AEM伺服器。

  2. 將Oak run jar放在放置crx-quickstart的同一個目錄中,否則在執行下面的命令時提供oak-run-*.jar的完整路徑。

  3. 執行以下命令(根據您的環境更新區段存放區和資料存放區的路徑):

    code language-none
    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. 該命令將輸出資料存放區一致性檢查。

DataStore 的一致性檢查器還可用於列出節點存放區中的所有 blob 參照以及資料存放區中可用的所有 blob id。使用以下命令:

$ java-jar oak-run-*.jar datastorecheck [ --id] [ --ref] [ --consistency] \

[ --store |] \

[ --s3ds |--fds] \

[ --dump] \

[ --track]

提供以下一個或多個可用選項:

—id — 列出資料存放區中的所有id。

—ref — 列出節點存放區中的所有blob參照。

—consistency — 透過進行一致性檢查列出所有遺失的blob。

下列選項可供選擇:

—store - mongo uri區段存放區的路徑(以上 — ref和 — consistency選項的要求)。

—dump — 傾印檔案的路徑(選用)。 否則,會在使用者 tmp 目錄中傾印檔案。

—s3ds - S3DataStore設定檔案的路徑。

—fds - FileDataStore設定檔案的路徑('path'屬性是必要的)。

—track — 本機存放庫主資料夾的路徑(選用)。 它會放置要追踪的已下載 blob id 的副本。

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f