Beheben wiederkehrender „SegmentNotFoundException“-Fehler in AEM-Veröffentlichungsinstanzen
Ein wiederkehrender Fehler SegmentNotFoundException führt dazu, dass Adobe Experience Manager (AEM)-Veröffentlichungsinstanzen abstürzen und nicht mehr reagieren. Repository-Prüfungen zeigen keine Beschädigung an, und das Problem besteht nach einem Neustart fort. Das Problem tritt bei Wartungsaufgaben wie der Revisionsbereinigung und der automatischen Datenspeicherbereinigung aufgrund einer fehlerhaften Thread-Behandlung auf. Das Problem lässt sich beheben, indem die Thread-Verwaltung von der nativen Java-ThreadPool auf die von Sling bereitgestellte ThreadPoolManager umgeschaltet wird.
Beschreibung description
Umgebung
Adobe Experience Manager (AEM) On-Premises, v6.5.22.0
Problem/Symptome
- Der Fehler SegmentNotFoundException wird wiederholt in den Protokollen der AEM-Veröffentlichungsinstanz angezeigt.
- Die AEM-Veröffentlichungsinstanz stürzt ab und reagiert nicht mehr.
- Die kontinuierliche Erstellung von Fehlerprotokollen führt zu einer schweren Datenträger-E/A-Blockierung.
- Repository-Konsistenzprüfungen mit dem Oak-run-Bericht zu Beschädigungen oder Strukturproblemen.
- Das Problem tritt nach dem Neustart von AEM erneut auf, auch wenn Wartungsaufgaben außerhalb der Geschäftszeiten geplant oder vorübergehend deaktiviert sind.
Lösung resolution
Führen Sie zur Behebung des Problems folgende Schritte aus:
- Überprüfen Sie das Sitzungsmanagement in Ihrem benutzerdefinierten Code und schließen Sie alle Repository-Sitzungen nach der Verwendung.
- Planen Sie die Revisionsbereinigung und die Datenspeicherbereinigung außerhalb der Geschäftszeiten, um Konflikte zu reduzieren.
- Rufen Sie die JMX-Konsole unter
/system/console/jmxauf und überprüfen SieSessionStatisticsMBeans auf lange laufende oder inaktive Sitzungen. Verwenden SieInitStackTrace, um Ursprünge von benutzerdefiniertem Code zu identifizieren. - Ersetzen Sie die native Java-
ThreadPooldurch die von Sling bereitgestelltenThreadPoolManagerfür alle Hintergrundprozesse in AEM-Services. - Starten Sie die AEM-Veröffentlichungsinstanz neu, nachdem Sie diese Änderungen implementiert haben.
- Überwachen Sie Fehlerprotokolle für mehrere Tage, um zu bestätigen dass „SegmentNotFoundException nicht mehr angezeigt wird.
- Stellen Sie sicher, dass Repository-Vorgänge stabil und fehlerfrei bleiben.
Weitere Überlegungen:
- Repository-Integritätsprüfungen mit Oak-run melden konsistent intakte Knoten und Eigenschaften, was auf keine strukturelle Beschädigung hinweist.
- Das Problem wird nicht durch Deaktivieren der Revisionsbereinigung oder Ausführen der Offline-Komprimierung behoben. Eine ordnungsgemäße Thread-Verwaltung ist erforderlich.
- Die Optionen zum manuellen Entfernen von Knoten gelten möglicherweise nicht, wenn
FileDataStorekonfiguriert ist. Bestätigen Sie immer den Zustand des Repositorys, bevor Sie versuchen, manuell einzugreifen.
Verwandtes Lesen
- Revisionsbereinigung im Benutzerhandbuch zu AEM 6.5
- Datenspeicherbereinigung im Benutzerhandbuch zu AEM 6.5
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f