Le compactage hors ligne échoue avec l’exception OutOfMemoryError entraînant le développement du référentiel sans achever la phase de nettoyage.

Cause

La mémoire de tas s’exécute pendant le compactage hors ligne et échoue avec l’erreur suivante :

Exception in thread "main" java.lang.OutOfMemoryError: Java heap space: failed reallocation of scalar replaced objects
at java.lang.StringBuffer.toString(StringBuffer.java:671)
at java.io.RandomAccessFile.readLine(RandomAccessFile.java:936)
at org.apache.jackrabbit.oak.plugins.segment.file.FileStore.<init>(FileS tore.java:373)
at org.apache.jackrabbit.oak.plugins.segment.file.FileStore.<init>(FileS tore.java:76)
at org.apache.jackrabbit.oak.plugins.segment.file.FileStore$Builder.crea te(FileStore.java:286)
at org.apache.jackrabbit.oak.run.Main.openFileStore(Main.java:407)
at org.apache.jackrabbit.oak.run.Main.compact(Main.java:372)
at org.apache.jackrabbit.oak.run.Main.main(Main.java:147)

Résolution

  1. Augmentez le -Xms16G -Xmx16G et relancez le compactage hors ligne.
  2. Assurez-vous que la version de l’outil oak-run correspond à la version oak-core installée dans l’instance AEM.
  3. Consultez cet article qui offre plus de conseils sur la manière de réduire l'utilisation de la mémoire de compactage hors ligne.

Ce produit est distribué sous licence Creative Commons Attribution - Pas d’utilisation commerciale - Partage à l’identique 3.0 non transposé  Les publications Twitter™ et Facebook ne sont pas couvertes par les dispositions Creative Commons.

Mentions légales   |   Politique de confidentialité en ligne