AEM 게시 인스턴스에서 반복되는 "SegmentNotFoundException" 오류 해결
반복되는 SegmentNotFoundException 오류로 인해 Adobe Experience Manager(AEM) 게시 인스턴스가 충돌하고 응답하지 않습니다. 저장소 확인에 손상이 없으며 다시 시작한 후에도 문제가 지속됩니다. 문제는 잘못된 스레드 처리로 인해 수정 정리 및 데이터 저장소 가비지 수집과 같은 유지 관리 작업 중에 발생합니다. 스레드 관리를 Java 네이티브 ThreadPool에서 Sling이 제공한 ThreadPoolManager(으)로 전환하면 문제가 해결됩니다.
설명 description
환경
Adobe Experience Manager(AEM) 온-프레미스, v6.5.22.0
문제/증상
- SegmentNotFoundException 오류가 AEM 게시 인스턴스 로그에 반복적으로 나타납니다.
- AEM Publish 인스턴스가 충돌하며 완전히 응답하지 않습니다.
- 지속적인 오류 로그 생성으로 심각한 디스크 I/O 차단이 발생합니다.
- oak-run 보고서를 사용하여 저장소 일관성 검사를 수행하면 손상이나 구조적 문제가 발생하지 않습니다.
- 업무시간 외에 유지 관리 작업이 예약되거나 일시적으로 비활성화된 경우에도 AEM을 다시 시작한 후 문제가 반복됩니다.
해결 방법 resolution
다음 단계에 따라 문제를 해결하십시오.
- 사용자 지정 코드에서 세션 관리를 검토하고 사용 후 모든 저장소 세션을 닫습니다.
- 충돌을 줄이기 위해 영업시간 외에 개정 정리 및 데이터 저장소 가비지 수집을 예약합니다.
/system/console/jmx에서 JMX 콘솔에 액세스하고SessionStatisticsMBean에서 장기 실행 또는 비활성 세션을 확인합니다. 사용자 지정 코드 원본을 식별하려면InitStackTrace을(를) 사용하십시오.- AEM 서비스의 모든 백그라운드 프로세스에 대해 Java 네이티브
ThreadPool을(를) Sling이 제공한ThreadPoolManager(으)로 바꾸십시오. - 이러한 변경 사항을 구현한 후 AEM 게시 인스턴스를 다시 시작합니다.
- SegmentNotFoundException이(가) 더 이상 나타나지 않음을 확인하기 위해 며칠 동안 오류 로그를 모니터링합니다.
- 저장소 작업이 안정적이고 오류가 없는지 확인합니다.
추가 고려 사항:
- oak-run을 사용한 저장소 무결성 검사는 지속적으로 정상 노드 및 속성을 보고하여 구조적 손상이 없음을 나타냅니다.
- 개정 정리를 비활성화하거나 오프라인 압축을 실행하여 문제가 해결되지 않습니다. 적절한 스레드 관리가 필요합니다.
FileDataStore이(가) 구성된 경우 수동 노드 제거 옵션이 적용되지 않을 수 있습니다. 수동 개입을 시도하기 전에 항상 저장소 상태를 확인하십시오.
3d58f420-19b5-47a0-a122-5c9dab55ec7f