Beheben von Inkonsistenzen durch Neustarten von AEM, wenn ein SegmentNotFound-Problem in AEM 6.3 gemeldet wird

Problem

In den Protokolldateien wird eine SegmentNotFoundException registriert. Das Neustarten von AEM führt dazu, dass der Fehler für einen Tag (oder länger) verschwindet.

Beispiel:

29.09.2017 05:40:27.031 *ERROR* [10.40.228.155 [1506663627021] GET /services/createvaultpackage HTTP/1.1] org.apache.jackrabbit.oak.segment.SegmentNotFoundExceptionListener Segment not found: 6c3c7910-6501-4c0a-af5d-6972006c6145. SegmentId age=654602216ms,segment-generation=17
org.apache.jackrabbit.oak.segment.SegmentNotFoundException: Segment 6c3c7910-6501-4c0a-af5d-6972006c6145 not found
at org.apache.jackrabbit.oak.segment.file.FileStore$8.call(FileStore.java:602)
...
at org.apache.jackrabbit.oak.plugins.nodetype.ReadOnlyNodeTypeManager.internalGetNodeType(ReadOnlyNodeTypeManager.java:409)
at org.apache.jackrabbit.oak.plugins.nodetype.ReadOnlyNodeTypeManager.getNodeType(ReadOnlyNodeTypeManager.java:147)
at org.apache.jackrabbit.vault.packaging.impl.JcrPackageManagerImpl.initNodeTypes(JcrPackageManagerImpl.java:737)
at org.apache.jackrabbit.vault.packaging.impl.JcrPackageManagerImpl.(JcrPackageManagerImpl.java:109)
at org.apache.jackrabbit.vault.packaging.PackagingService.getPackageManager(PackagingService.java:49)
at customcode.VaultPackageFromSearchServlet.doGet(VaultPackageFromSearchServlet.java:172)

Umgebung

AEM 6.3 und neuere Versionen mit aktivierter Online-Verdichtung

Ursache

Dies kann durch langwierige JCR-Sitzungen und Online-Verdichtung verursacht werden.

Lösung

Vermeiden Sie es, JCR-Sitzungen längere Zeit offen zu halten.  Um den Fehler erneut hervorzurufen, führen Sie folgende Schritte aus:

  1. Schließen Sie die Sitzung und öffnen Sie bei Bedarf eine neue.
  2. Oder rufen Sie regelmäßig session.refresh(true) auf.

Für weitere Details zum Thema lang laufende Sitzungen als ein Anti-Pattern in AEM 6.x sehen Sie diesen Artikel.

 Adobe

Schneller und einfacher Hilfe erhalten

Neuer Benutzer?

Adobe MAX 2024

Adobe MAX
Die Konferenz für Kreative

14. bis 16. Oktober in Miami Beach und online

Adobe MAX

Die Konferenz für Kreative

14. bis 16. Oktober in Miami Beach und online

Adobe MAX 2024

Adobe MAX
Die Konferenz für Kreative

14. bis 16. Oktober in Miami Beach und online

Adobe MAX

Die Konferenz für Kreative

14. bis 16. Oktober in Miami Beach und online