6

In [1, page 16] Aleksey Shipilёv says that Shenandoah 2.0 is available in JDK 13 GA. But in the Complete JDK 13 Release Notes [2] (including JDK 13 GA, JDK 13.0.1 GA, JDK 13.0.2 GA), Shenandoah is not mentioned.

Question: What is the current status of Shenandoah 2.0 in JDK GA? Is it available in JDK 13 GA, or, if not, for which release is it planed?

[1] https://shipilev.net/talks/jugbb-Sep2019-shenandoah.pdf

[2] https://www.oracle.com/technetwork/java/javase/13all-relnotes-5461743.html

user120513
  • 531
  • 4
  • 12

2 Answers2

6

Oracle famously does not ship Shenandoah in either their proprietary Oracle JDK downstream, or their OpenJDK builds. For that matter, Oracle does not list any Shenandoah-related release notes for their builds -- that is the link you have. You want JDK 13 from any other OpenJDK vendor and look into their release notes. Automatically-generated release notes for the vanilla OpenJDK 13u can be seen here, generated by myself -- there are the whole lot of RNs for Shenandoah in hotspot/gc section.

"Shenandoah 2.0" indeed ships starting from JDK 13, and it was also backported to Red Hat 11u and 8u downstreams, at 11.0.5+ and 8u242+, respectively. Recently, the proposal to contribute it to 11u upstream was made.

See more details in the relevant section of Shenandoah wiki.

Aleksey Shipilev
  • 18,599
  • 2
  • 67
  • 86
  • Thank you very much for the explanation and information. This also explains why Shenandoah is contained in the OpenJDK source code but not in the Oracle binaries. Having some flexibility in the choice of a low pause gc could indeed be a criteria for the choice of an JDK. – user120513 Jan 19 '20 at 12:04
2

Oracle does not support it, try downloading Oracle JDK and enabling it : -XX:+UseShenandoahGC, it will not work; it will though, if you get AdoptOpenJDK.

Eugene
  • 117,005
  • 15
  • 201
  • 306