
Foojay Podcast #101: Java 27 in Practice: Smaller Heaps, Smarter Defaults, and Valhalla on the Horizon
JDK 27 arrives on 15 September 2026, and it is a feature release rather than a Long-Term Support one. That distinction matters less than it sounds. As Simon Ritter, Deputy CTO at Azul and a Java Champion, points out, every OpenJDK release is delivered the same way, and “long-term support” is a property of the binary distribution you install rather than of the platform itself. I sit down with Simon for Foojay Podcast #101 to walk through all nine JEPs in the release.
What we talked about
- Why “feature release” and “LTS” describe the distribution, not the platform
- Compact object headers, which shrink the per-object header from 64 bits to 32
- G1 becoming the default garbage collector everywhere, including small single-core machines that used to fall back to the serial collector
- Post-quantum hybrid key exchange for TLS 1.3, a defence against harvest-now-decrypt-later attacks
- JFR in-process data redaction, so flight recordings can be shared without leaking tokens or passwords
- A third preview of PEM encodings, and why the primary class went back from a record to an ordinary class
- Lazy constants, renamed from stable values
- Primitive types in patterns in a fifth preview, structured concurrency in a seventh, and the Vector API in a twelfth incubator
- The shift from quarterly to monthly security updates that began in August 2026
- Project Valhalla landing its first preview in Java 28: Value Objects and Strict Field Initialization
What stood out
The two performance changes cost nothing but the upgrade. Compact object headers measure a 22% reduction in heap and 8% in CPU on SPECjbb2015, and because the change is internal to the JVM, a JAR you built years ago benefits without a single line changing.
Looking further out, Valhalla is roughly 179,000 lines across 1,800 files and a new value keyword, after about twelve years of work. Simon is candid about what it will not be: do not expect it final in JDK 29. He is equally candid about the Simple JSON API landing in 28, which he suspects may follow string templates rather than survive its previews.
See the Foojay Podcast #101 for all info, shownotes, links, etc.