OpenJDK Governing Board Minutes: 2022/11/03

The OpenJDK Governing Board met via conference call on Thursday, 3 November 2022 at 15:00 UTC with the following agenda:

  1. JavaOne announcements
  2. Any other business

Five Board members were present: Georges Saab, Annette Keenleyside, Andrew Haley, Volker Simonis, and Mark Reinhold.

The intent of these minutes is to capture the conversational flow of the Board's discussion and also to record decisions. If you are interested only in the latter then search for the word "AGREED" throughout the text.

0. JavaOne

After Georges welcomed everyone to the meeting, Andrew asked for a brief summary of JavaOne 2022. Georges declared that it exceeded expectations. The venue was very nice, the quality of talks was high, feedback on all of the keynotes was great, and everyone who went seemed to have a good time. Attendance was in-line with other recent US-based conferences, which is not as high as those in Europe. Overall, Georges thought the conference went well considering that it had not been held in a few years. Annette concurred, saying that attendees from her organization thought it was a good conference.

1. JavaOne announcements

Annette requested additional information about a few announcements at JavaOne.

GraalVM

Regarding the GraalVM announcement, Annette wanted to know what the plans were around the GraalVM Native Image feature and how GraalVM might intersect with Project Leyden. Re-capping the announcement, Georges said that the first part stated that Oracle intends to contribute the Java-related parts of the GraalVM CE open-source project to the OpenJDK Community. Details for how this will be done are yet to be determined. A new Project (or Projects) may need to be proposed to receive these contributions. General feedback from the OpenJDK and GraalVM communities was positive. The second part of the announcement stated that Oracle intends to do on-going work on the Java-related parts of GraalVM in the OpenJDK Community, following standard OpenJDK Community practices. The final part of the announcement stated Oracle's intent to align the license and the release model of the GraalVM technologies with those of the JDK.

Andrew asked whether the OpenJDK Community has an official policy on inbound licensing. Mark responded that while there is no stated official policy, there is a long-standing informal policy (since 2006) to use GPL v2, GPL v2 with the Classpath Exception, or in a few cases a permissive license such as BSD or MIT. Mark said that there are a few specific exceptions for legacy code in the JDK, for example code which carries the Apache 2.0 license, but we do not accept any new code under such licenses.

Volker asked when Graal would be integrated into the JDK. Georges and Mark reiterated that Oracle intends to contribute the GraalVM CE code for the JIT compiler and the Native Image tool; the "polyglot" language feature will not be included. The GraalVM code will not be integrated into the main-line JDK any time soon; it will, rather, continue to be developed in one or more OpenJDK Projects. At some point in the future, developers working in those Project(s) may propose features for inclusion into the main line. If and when such features are integrated into the main-line JDK, they will be subject to all the usual processes and standards for JDK development.

Volker also asked whether the GraalVM Advisory Board would continue to govern work on these components. Georges replied that the future of the GraalVM Board would be determined by the GraalVM Community.

Java SE Subscription Enterprise Performance Pack

Referencing the Java SE Subscription Enterprise Performance Pack announcement, Annette asked about adoption of JDK 11 and JDK 17. Georges replied that there appears to be strong adoption, with robust movement from library and framework vendors to support newer versions. The move from JDK 11 to JDK 17 seems to be relatively easy, and downloads of the latest version are strong. Georges observed that vendors of existing applications are making the business decisions that are right for them. For some that entails moving forward, while others are turning to trusted parties for support and security updates for older releases. Five years ago, when the new release model was introduced, analysts and the press were skeptical, but we have consistently delivered production-quality releases with new features on time. The quality of releases now is better than it was under the old model.

Volker observed that the new performance pack appeared to be a return to the HotSpot Express (HSX) model. Mark disagreed, describing HSX as a main-line VM that was constrained to work in many past releases. That model was abandoned due the cost and complexity of maintaining and evolving a JVM which had to support the internal interfaces of many past releases. In contrast, the performance pack is a one-time backport of the JDK 17 VM into a JDK 8 code base.

JMS (Java Management Service)

Annette's final question was around the Java Management Service (JMS) announcement. Georges observed that this is an Oracle commercial cloud service offering, and hence unrelated to the OpenJDK Community.

2. Any other business

Volker asked whether there were plans for an OpenJDK Committers' Workshop (OCW) in Europe. Georges countered with a related question about plans for a FOSDEM Free Java devroom, whose attendees have historically included most OCW attendees. Andrew said that the Free Java devroom had been discussed internally within Red Hat; given the enormous amount of work required, it was hard to find enthusiasm to run it. He guessed that it would not occur in 2023. Georges guessed that many companies still have conservative travel budgets. There are, therefore, no plans to hold OCW in February 2023, though Summer 2023 remains a possibility. Volker said that FOSDEM devrooms are not confirmed but he believed that some other parties would propose a Java-related devroom.

Annette reported that Loom's Virtual Threads in JDK 19 had broken some ports, causing her company's platform teams to have difficulty meeting their JDK 19 schedule. Speaking as a member of the Loom team, Andrew said that he thought all processes were followed, but they were not adequate; for example, there is no formal registry for port responsibility. Some ports, including x86 32-bit, do not have maintainers. The PPC 64-bit port suffered from a timing problem, since it was mid-handoff when virtual threads were in flight for delivery into JDK 19. The situation has improved somewhat, so he did not foresee a similar problem occurring in the near future. Andrew wondered whether we should consider a port policy similar to that of the GCC project, which allows a port to be removed after it has been broken for six months. Mark commented that a proposal for a formal list of first- and second-tier ports had been discussed a few times in the past, including at OCW, and that perhaps it was time to move forward with that proposal.

Volker noted a recently reported problem with missing mailing-list archives and suggested better testing or alarming, since the problem was not noticed for weeks. Mark was confident that the issue would be investigated and improvements would be made.

Under the topic of meeting logistics, Georges suggested scheduling the next quarterly meeting in advance. After a brief discussion, it was agreed that potential dates for the Q1 2023 meeting would be circulated via e-mail to identify a mutually acceptable date. Volker and Andrew requested that minutes for past meetings in 2022 be published. Georges assured them that they were forthcoming.

Georges thanked everyone for attending.

At this point, the Board adjourned.