This is our Jenkins job https://ci-hadoop.apache.org/view/ZooKeeper/job/ZooKeeper-Java-EA/
The latest build passed. We are using openjdk-21-ea+21 on Linux. it seems that it is not the very latest EA (is it +26 ?) >From the output of the jenkins job run: [ZooKeeper-Java-EA] $ /home/jenkins/tools/maven/apache-maven-3.9.2/bin/mvn -v Apache Maven 3.9.2 (c9616018c7a021c1c39be70fb2843d6f5f9b8a1c) Maven home: /home/jenkins/tools/maven/apache-maven-3.9.2 Java version: 21-ea, vendor: Oracle Corporation, runtime: /usr/local/asfpackages/java/openjdk-21-ea+21 Default locale: en_US, platform encoding: UTF-8 OS name: "linux", version: "4.15.0-206-generic", arch: "amd64", family: "unix" Enrico Il giorno mer 14 giu 2023 alle ore 10:44 David Delabassee <david.delabas...@oracle.com> ha scritto: > > Welcome to the OpenJDK Quality Outreach June update. > > JDK 21 has entered Rampdown Phase One (RDP1) [1], which means that the > main-line has been forked into a dedicated JDK 21 stabilization repository. > At this point, the overall JDK 21 feature set is frozen. Any changes pushed > to the main line are now bound for JDK 22. The stabilization repository is > open for select bug fixes and, with approval, late low-risk enhancements per > the JDK Release Process [2]. And in contrast to past practice, most > stabilization changes will be integrated via backports from the main-line > repository [1]. > > The coming weeks are critical to identify and resolve as many issues as > possible, i.e. before JDK 21 enters the Release Candidates phase in August. > We need to make sure those few weeks are leveraged to test both existing code > running on top of JDK 21 and new JDK 21 features. The heads-up below > illustrates the importance and the benefits of doing such tests. > > [1] https://mail.openjdk.org/pipermail/jdk-dev/2023-June/007911.html > [2] https://openjdk.org/jeps/3#Integrating-fixes-and-enhancements > > > ## Heads-up: On the Importance of Doing Tests With OpenJDK Early-Access Builds > > The following is a recent example that demonstrates the benefits of testing > an existing codebase using the OpenJDK early-access builds. > > Last month, we published a heads-up focused on Sequenced Collections [3] as > they could potentially introduce some incompatibilities. > The Eclipse Collections (EC) team did their homework and sure enough, EC was > impacted as it was now throwing compilation errors with JDK 21 early-access > builds. The EC team was able to quickly fix those compilation errors, i.e., > it was mainly about adding overriding default methods. But once those > compilation errors were fixed, and this is where it gets interesting, another > issue surfaced. This time, the problem was related to LinkedHashMap > serialization. After some investigation, the EC team identified that second > issue as JDK one and a JBS ticket was opened. That issue was then confirmed > as a JDK regression and was promptly fixed in OpenJDK main-line, i.e., JDK > 22. The fix was then backported into the JDK 21 stabilization repository. > This EC pull request [4] provides additional details. > In this case, the JDK fix was easy but it is nevertheless the kind of issues > that could have easily fallen through the crack if the EC team wasn’t > pro-actively testing with OpenJDK early-access builds. The EC issue would > have then surfaced after the JDK 21 General Availability... and who knows > when the JDK LinkedHashMap serialization regression would have been fixed? > TL; DR; Testing an existing codebase with OpenJDK early-access builds is a > win-win situation. It helps the project itself, Eclipse Collections in this > case, as it enables developers to identify issues in their own codebase > before that new JDK version is Generally Available. It helps the JDK too as > any JDK issue detected early enough in the development cycle gives the > OpenJDK engineers a chance to address it before the General Availability of > that new JDK version. And last but not least, having a robust JDK is also a > win for the Java community at large. > > And thanks to the Eclipse Collections team and especially to Don Raab for > helping to make the Java platform more robust! > > [3] https://inside.java/2023/05/12/quality-heads-up/ > [4] https://github.com/eclipse/eclipse-collections/pull/1461 > > > ## JDK 21 Early-Access Builds > > JDK 21 Early-Access builds 26 are now available [5], and are provided under > the GNU General Public License v2, with the Classpath Exception. The Release > Notes are available here [6] and the javadocs here [7]. > > ### JEPs integrated into JDK 21: > - 430: String Templates (Preview) > - 431: Sequenced Collections > - 439: Generational ZGC > - 440: Record Patterns > - 441: Pattern Matching for switch > - 442: Foreign Function & Memory API (3rd Preview) > - 443: Unnamed Patterns and Variables (Preview) > - 444: Virtual Threads > - 445: Unnamed Classes and Instance Main Methods (Preview) > - 446: Scoped Values (Preview) > - 448: Vector API (6th Incubator) > - 449: Deprecate the Windows 32-bit x86 Port for Removal > - 451: Prepare to Disallow the Dynamic Loading of Agents > - 452: Key Encapsulation Mechanism API > - 453: Structured Concurrency (Preview) > > It is worth mentioning that JEP 404 (Generational Shenandoah - Experimental) > has been proposed to drop from JDK 21 [8]. > > ### Changes in recent JDK 21 builds (b23-b26) that may be of interest: > > Note that this is only a curated list of changes, make sure to check [9] for > additional changes. > > - JDK-8298127: HSS/LMS Signature Verification > - JDK-8305972: Update XML Security for Java to 3.0.2 > - JDK-8308244: Installation of jdk rpm corrupts alternatives > - JDK-8307990: jspawnhelper must close its writing side of a pipe before > reading from it > - JDK-8303465: KeyStore of type KeychainStore, provider Apple does not show > all trusted certificates > - JDK-8303530: Redefine JAXP Configuration File > - JDK-8307478: Implementation of Prepare to Restrict The Dynamic Loading of > Agents > - JDK-8301553: Support Password-Based Cryptography in SunPKCS11 > - JDK-8308341: JNI_GetCreatedJavaVMs returns a partially initialized JVM > - JDK-8308108: Support Unicode extension for collation settings > - JDK-8305972: Update XML Security for Java to 3.0.2 > - JDK-8305091: Change ChaCha20 cipher init behavior to match AES-GCM > - JDK-8179502: Enhance OCSP, CRL and Certificate Fetch Timeouts > - JDK-8307547: Support variant collations > - JDK-8308876: JFR: Deserialization of EventTypeInfo uses incorrect attribute > names > - JDK-8297878: KEM: Implementation > - JDK-8308819: add JDWP and JDI virtual thread support for > ThreadReference.ForceEarlyReturn > - JDK-8307779: Relax the java.awt.Robot specification > - JDK-8306703: JFR: Summary views > - JDK-8309146: extend JDI StackFrame.setValue() and JDWP StackFrame.setValues > minimal support for virtual threads > - JDK-8307840: SequencedMap view method specification and implementation > adjustments > - JDK-8304438: jcmd JVMTI.agent_load should obey EnableDynamicAgentLoading > - JDK-8306431: File.listRoots method description should be re-examined > > [5] https://jdk.java.net/21/ > [6] https://jdk.java.net/21/release-notes > [7] https://download.java.net/java/early_access/jdk21/docs/api/ > [8] https://mail.openjdk.org/pipermail/jdk-dev/2023-June/007910.html > [9] https://github.com/openjdk/jdk/compare/jdk-21+23...jdk-21+26 > > > ## JDK 22 Early-Access Builds > > Given that JDK 21 is now in Rampdown Phase, the initial JDK 22 Early-Access > builds are now also available [10]. Those EA builds are provided under the > GNU General Public License v2, with the Classpath Exception. > [10] https://jdk.java.net/22/ > > ## JavaFX 21 Early-Access Builds > > These are early access builds of the JavaFX 21 Runtime, built from > openjdk/jfx [11]. They are intended to allow JavaFX application developers to > build and test their applications with JavaFX 21 on JDK 21. The latest builds > 21 (2023/6/8) are now available [12]. These early-access builds are provided > under the GNU General Public License, version 2, with the Classpath > Exception. Feedback should be reported to the openjfx-dev mailing list [13]. > [11] https://github.com/openjdk/jfx > [12] https://jdk.java.net/javafx21/ > [13] http://mail.openjdk.org/mailman/listinfo/openjfx-dev > > ## Topics of Interest > > All That is in Java 21?! > https://inside.java/2023/06/08/newscast-50/ > > Script Java Easily in 21 and Beyond > https://inside.java/2023/05/25/newscast-49/ > > New JFR `view` Command > https://egahlin.github.io/2023/05/30/views.html > > Patterns: Exhaustiveness, Unconditionality, and Remainder > https://openjdk.org/projects/amber/design-notes/patterns/exhaustiveness > > Design Document on Nullability and Value Types > https://mail.openjdk.org/pipermail/valhalla-spec-observers/2023-May/002243.html > > JFR: Java's Observability & Monitoring Framework - Stack Walker #2 > https://inside.java/2023/05/14/stackwalker-02/ > > > ## JDK Crypto Roadmap Update > > Oracle updated the JDK Cryptographic Roadmap to announce a change, with the > Oct CPU (2023-10-17), of the priority order used by JDK 8 and JDK 11 when > negotiating cipher suites to use on TLS connections. Please check the JDK > Cryptographic Roadmap page [14] for more details. > [14] https://www.java.com/en/jre-jdk-cryptoroadmap.html > > > ~ > > Please, make sure to test your projects using the JDK 21 EA builds as we > still have time to fix potential issues. And thanks for participating in the > OpenJDK Quality Outreach program! > > > --David