Offline compaction fails with OutOfMemoryError exception causing the repository to grow without completing the cleanup phase.

Cause

Heap memory runs out during offline compaction and it fails with the error below:

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)

Resolution

  1. Increase the -Xms16G -Xmx16G and retry the offline compaction.
  2. Make sure that the oak-run tool version matches the oak-core version installed in your AEM instance.
  3. See this article with more tips on how to reduce memory utilization of offline compaction.

Licencia na používanie tohto diela sa poskytuje v súlade s podmienkami licencie Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License  Na príspevky v sociálnych sieťach Twitter™ a Facebook sa nevzťahujú podmienky licencií Creative Commons.

Právne upozornenia   |   Zásady ochrany osobných údajov online