JDK 25 Performance Regression with Parallel GC + Compact Object Headers

Rohith Reddy Nedhunuri <[email protected]> Fri, 16 Jan 2026 11:28:57 -0500
Newsgroups gmane.comp.jakarta.lucene.devel
Message-ID <CALGZXpC7JSM30n2wQnx3TFQSbKU1RLFFLBFKCTyUfmE5v+Bvdg@mail.gmail.com>
Hi Lucene community,


We've identified a significant performance regression in Amazon when
upgrading to JDK 25 that affects applications using Parallel GC


Issue: JDK-8375467 - Unproductive Full GC cycles with Compact Object
Headers enabled

• Link: https://bugs.openjdk.org/browse/JDK-8375467

• Affects: JDK 25 with Parallel GC + Compact Object Headers


Our Experience: We observed heap usage spiking to 100%, dramatically slower
indexing, and much larger segment merges in production.


Root Cause: The new Parallel GC implementation for Lilliput (Compact Object
Headers) has a bug where non-maximum-compaction full GCs become
unproductive, leading to repeated unproductive GC cycles.


The OpenJDK team is working on a fix.


Best regards,

Rohith Reddy Nedhunuri