oak-run을 통해 데이터 저장소의 일관성 검사를 실행하는 방법

Adobe Experience Manager에서 oak-run을 통해 데이터 저장소 일관성 검사를 실행하는 방법을 알아봅니다.

설명 description

환경

AEM(Adobe Experience Manager)

문제

데이터 저장소 일관성 검사는 누락되었지만 여전히 참조되는 모든 데이터 저장소 바이너리를 보고합니다. 일관성 검사는 Felix 콘솔에서 직접 트리거할 수 있습니다.

다음에서 트리거될 수 있습니다. MarkSweepGarbageCollector#checkConsistency Mbean.

다음과 같은 경우 BlobGC MBeans 다음에 등록됨: MBeanServer 다음을 수행합니다 mbean 사용할 수도 있습니다.

BlobGCMbean#checkConsistency

일관성 검사가 완료되면 누락된 것으로 보고된 바이너리 수가 표시됩니다. 숫자가 보다 큰 경우 0(0)에 대해 구성된 로그를 확인합니다. 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 도구는 아래에 숨겨진 Lucene 인덱스 파일을 확인합니다. /oak: index 콘텐츠 경로의 나머지 부분도 포함됩니다. datastorecheck 명령 oak-run 는 데이터 저장소에서 일관성 검사를 실행하는 데 사용할 수 있습니다.  명령을 실행하는 방법에 대한 자세한 단계는 아래에 자세히 설명되어 있습니다.

해결 방법 resolution

  1. AEM 서버에 oak-run jar 1.8.8 이상 버전을 다운로드합니다.

  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 - 일관성 확인을 통해 누락된 모든 블로그를 나열합니다.

다음과 같은 옵션을 선택할 수 있습니다.

—store - mongo uri의 세그먼트 저장소 경로(위의 —ref 및 —consistency 옵션에 필요).

—dump - 파일을 덤프할 경로(선택 사항). 그렇지 않은 경우 파일이 사용자 tmp 디렉터리에서 덤프됩니다.

—s3ds - S3DataStore 구성 파일의 경로.

—fds - FileDataStore 구성 파일의 경로('경로' 속성은 필수).

—track - 로컬 저장소 홈 폴더의 경로(선택 사항). 다운로드한 Blob ID 사본을 배치하여 추적합니다.

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