Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release notes for 0.10.0 #2766

Merged
merged 1 commit into from
Oct 3, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
187 changes: 187 additions & 0 deletions doc/release-notes/0.10/0.10.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,187 @@
<!--
* Copyright (c) 2017, 2018 IBM Corp. and others
*
* This program and the accompanying materials are made
* available under the terms of the Eclipse Public License 2.0
* which accompanies this distribution and is available at
* https://www.eclipse.org/legal/epl-2.0/ or the Apache
* License, Version 2.0 which accompanies this distribution and
* is available at https://www.apache.org/licenses/LICENSE-2.0.
*
* This Source Code may also be made available under the
* following Secondary Licenses when the conditions for such
* availability set forth in the Eclipse Public License, v. 2.0
* are satisfied: GNU General Public License, version 2 with
* the GNU Classpath Exception [1] and GNU General Public
* License, version 2 with the OpenJDK Assembly Exception [2].
*
* [1] https://www.gnu.org/software/classpath/license.html
* [2] http://openjdk.java.net/legal/assembly-exception.html
*
* SPDX-License-Identifier: EPL-2.0 OR Apache-2.0 OR GPL-2.0 WITH
* Classpath-exception-2.0 OR LicenseRef-GPL-2.0 WITH Assembly-exception
-->

# Eclipse OpenJ9 version 0.10.0 release notes

These release notes support the [Eclipse OpenJ9 0.10.0 release plan](https://projects.eclipse.org/projects/technology.openj9/releases/0.10.0/plan).



## Binaries and supported environments

This release adds compatibility with OpenJDK v11. Builds of OpenJDK 11 with OpenJ9 will be available from the AdoptOpenJDK community at the following link:

- [OpenJDK version 11](https://adoptopenjdk.net/releases.html?variant=openjdk11&jvmVariant=openj9)

Builds are tested against the OpenJ9 functional verification (FV) test suite, the OpenJDK test suites, and additional tests at AdoptOpenJDK. Builds are compatible with OpenJDK 11. Compliance with the specification is tracked at the AdoptOpenJDK website where compliant builds are marked with a blue check mark.

OpenJDK 11 with Eclipse OpenJ9 is a long term support (LTS) release and supersedes OpenJDK 10 with Eclipse OpenJ9.

Although it is possible to build an OpenJDK v8 with the OpenJ9 0.10.0 release level, testing at the project is not complete and therefore support is not available.

To learn more about support for OpenJ9 releases, including OpenJDK levels and platform support, see [Supported environments](https://eclipse.org/openj9/docs/openj9_support/index.html).


## Notable changes in this release

The following table covers notable changes in v0.10.0. Further information about these changes can be found in the [user documentation](https://www.eclipse.org/openj9/docs/version0.10/).

<table cellpadding="4" cellspacing="0" summary="" width="100%" rules="all" frame="border" border="1"><thead align="left">
<tr valign="bottom">
<th valign="bottom">Issue number</th>
<th valign="bottom">Description</th>
<th valign="bottom">Platform</th>
<th valign="bottom">Impact</th>
</tr>
</thead>
<tbody>

<tr><td valign="top"><a href="https://github.com/eclipse/openj9/issues/2108">#2108</a></td>
<td valign="top">JEP 181 Nest-Based Access Control</td>
<td valign="top">OpenJDK11</td>
<td valign="top">Implementing OpenJDK 11 <a href="http://openjdk.java.net/jeps/181">JEP 181</a>.</td>
</tr>

<tr><td valign="top"><a href="https://github.com/eclipse/openj9/issues/954">#954</a></td>
<td valign="top">JEP 309 Dynamic Class-File Constants</td>
<td valign="top">OpenJDK11</td>
<td valign="top">Implementing OpenJDK 11 <a href="http://openjdk.java.net/jeps/309">JEP 309</a>.</td>
</tr>

<tr><td valign="top"><a href="https://github.com/eclipse/openj9/issues/992">#992</a></td>
<td valign="top">JEP 320 Remove the Java EE and CORBA Modules</td>
<td valign="top">OpenJDK11</td>
<td valign="top">Implementing OpenJDK 11 <a href="http://openjdk.java.net/jeps/320">JEP 320</a>.</td>
</tr>

<tr><td valign="top"><a href="https://github.com/eclipse/openj9/issues/1875">#1875</a></td>
<td valign="top">JEP 327 Unicode 10</td>
<td valign="top">OpenJDK11</td>
<td valign="top">Implementing OpenJDK 11 <a href="http://openjdk.java.net/jeps/327">JEP 327</a>.</td>
</tr>

<tr><td valign="top"><a href="https://github.com/eclipse/openj9/pull/2576">#2576</a></td>
<td valign="top">Performance improvements for VM entry/exit for JNI natives</td>
<td valign="top">OpenJDK8 and later: All platforms</td>
<td valign="top">Atomic compare-and-swap operations are replaced with
a modified Dekker algorithm, which provides a lightweight mechanism
for synchronizing VM entry and exit for JNI native code.</td>
</tr>

<tr><td valign="top"><a href="https://github.com/eclipse/openj9/issues/1938">#1938</a></td>
<td valign="top">The default shared classes cache size is increased.</td>
<td valign="top">OpenJDK8: 64-bit platforms</td>
<td valign="top">The default size is increased from 16 MB to 300 MB, with a "soft" maximum limit for the initial size of the cache (-Xscmx) set to 64 MB.</td>
</tr>

<tr><td valign="top"><a href="https://github.com/eclipse/openj9/issues/2746">#2746</a></td>
<td valign="top">Java dump files now record the value for the soft maximum shared cache size (`-Xscmx`).</td>
<td valign="top">OpenJDK8 and later: All platforms</td>
<td valign="top">The value for `-Xscmx` is recorded in the `SHARED CLASSES` section of the Java dump file against the string `2SCLTEXTSMB`. </td>
</tr>

<tr><td valign="top"><a href="https://github.com/eclipse/openj9/pull/2508">#2508</a></td>
<td valign="top">New OpenJ9 option, <code>-XX:HeapDumpPath</code>.</td>
<td valign="top">OpenJDK8 and later: All platforms</td>
<td valign="top">For compatibility with HotSpot, <code>-XX:HeapDumpPath</code> is accepted by OpenJ9, which has the same functionality as <code>-Xdump:directory</code>.</td>
</tr>

<tr><td valign="top"><a href="https://github.com/eclipse/openj9/pull/2533">#2533</a></td>
<td valign="top">New OpenJ9 option, <code>-XX:[+|-]HeapDumpOnOutOfMemoryError</code>.</td>
<td valign="top">OpenJDK8 and later: All platforms</td>
<td valign="top">For compatibility with HotSpot, <code>-XX:[+|-]HeapDumpOnOutOfMemoryError</code> is accepted by OpenJ9, which can enable or disable dumps when an OutOfMemory exception occurs.</td>
</tr>

<tr><td valign="top"><a href="https://github.com/eclipse/openj9/pull/2196">#2196</a></td>
<td valign="top">New OpenJ9 option, <code>-XX:ActiveProcessorCount=<value></code>.</td>
<td valign="top">OpenJDK8 and later: All platforms</td>
<td valign="top">For compatibility with HotSpot, this option overrides the value for the number of CPUs that are automatically detected by the JVM. Additional Java dump information is recorded when the option is set.</td>
</tr>

</table>


## Known Issues

The v0.10.0 release contains the following known issues and limitations:

<table cellpadding="4" cellspacing="0" summary="" width="100%" rules="all" frame="border" border="1">
<thead align="left">
<tr valign="bottom">
<th valign="bottom">Issue number</th>
<th valign="bottom">Description</th>
<th valign="bottom">Platform</th>
<th valign="bottom">Impact</th>
<th valign="bottom">Workaround</th>
</tr>
</thead>
<tbody>

<tr><td valign="top"><a href="https://github.com/eclipse/openj9/issues/378">#378</a></td>
<td valign="top">DDR support</td>
<td valign="top">AIX</td>
<td valign="top">Inability to diagnose problems with the VM, garbage collector, or JIT.</td>
<td valign="top">None</td>
</tr>

<tr><td valign="top"><a href="https://github.com/ibmruntimes/openj9-openjdk-jdk8/issues/54">#54</a></td>
<td valign="top">Signal handling</td>
<td valign="top">All platforms</td>
<td valign="top">Currently, shutdown signals (<code>SIGINT</code>, <code>SIGHUP</code> and <code>SIGTERM</code>) and <code>SIGCONT</code> are fully supported on Unix platforms (pLinux, zLinux, xLinux, AIX, and z/OS). Support for other POSIX signals is pending. See <code>SunMiscSignalTest.java</code> for the list of signals that need to be supported.</td>
<td valign="top">None</td>
</tr>

<tr><td valign="top"><a href="https://github.com/eclipse/openj9/issues/479">#479</a></td>
<td valign="top">Non-compressed references VM builds not available</td>
<td valign="top">AIX, Windows, Linux on Z, Linux on Power</td>
<td valign="top">Non-compressed references VM builds, which support heaps larger than 57GB, are built on Linux on x86. </td>
<td valign="top">Manual builds on other platforms are possible by following our <a href="https://github.com/eclipse/openj9/blob/master/buildenv/Build_Instructions_V8.md">detailed build instructions</a>.</td>
</tr>

<tr><td valign="top"><a href="https://github.com/eclipse/openj9/issues/897">#897</a></td>
<td valign="top">Javadoc not building some OpenJ9 extensions.</td>
<td valign="top">All platforms</td>
<td valign="top">Some API documentation is missing in the <code>build/&lt;platform&gt;/docs</code> directory.</td>
<td valign="top">None</td>
</tr>

<tr><td valign="top"><a href="https://github.com/eclipse/openj9/issues/898">#898</a></td>
<td valign="top">Javadoc building some unsupported OpenJ9 extensions.</td>
<td valign="top">All platforms</td>
<td valign="top">Some API documentation in <code>build/&lt;platform&gt;/docs</code> is not supported with OpenJ9.</td>
<td valign="top">None</td>
</tr>

<tr><td valign="top"><a href="https://github.com/ibmruntimes/openj9-openjdk-jdk8/issues/17">#17</a></td>
<td valign="top">OpenJDK with OpenJ9 builds before Java 11 contain extra shared libraries.</td>
<td valign="top">All platforms</td>
<td valign="top">Shared libraries must not be used in production.</td>
<td valign="top">None</td>
</tr>
</tbody>
</table>

## Other changes

A full commit history for this release is available at [Eclipse OpenJ9 v0.10.0](https://github.com/eclipse/openj9/releases/tag/openj9-0.10.0).
17 changes: 8 additions & 9 deletions doc/release-notes/0.9/0.9.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,9 +32,9 @@ These release notes support the [Eclipse OpenJ9 0.9.0 release plan](https://proj

The following additional OpenJDK binaries that contain the OpenJ9 VM are now available from the AdoptOpenJDK community:

- [OpenJDK version 10](https://adoptopenjdk.net/?variant=openjdk10-openj9)
- [OpenJDK version 8 32-bit Windows]()
- [OpenJDK version 8 x86-64 Linux (non-compressed references VM for large heaps)]()
- [OpenJDK version 10](https://adoptopenjdk.net/releases.html?variant=openjdk10&jvmVariant=openj9)
- [OpenJDK version 8 32-bit Windows](https://adoptopenjdk.net/releases.html?variant=openjdk8&jvmVariant=openj9#x32_win)
- [OpenJDK version 8 x86-64 Linux (non-compressed references VM for large heaps)](https://adoptopenjdk.net/releases.html?variant=openjdk8&jvmVariant=openj9#x64_linuxlh)

Builds are tested against the OpenJ9 functional verification (FV) test suite, the OpenJDK test suites, and additional tests at AdoptOpenJDK.
Not all tests are complete for AIX and Windows platforms.
Expand Down Expand Up @@ -86,10 +86,10 @@ The following table covers notable changes in v0.9.0. Further information about
<tr><td valign="top"><a href="https://github.com/eclipse/openj9/issues/1668">#1668</a></td>
<td valign="top">Idle tuning feature enabled</td>
<td valign="top">Linux on Z, Linux on Power systems</td>
<td valign="top">In addition to the support already available, there is the ability to maintain a minimal memory footprint during the life time of an application. See:<br/>
<b>-XX:[+|-]IdleTuningCompactOnIdle</b>,<br/>
<b>-XX:[+|-]IdleTuningGcOnIdle</b>,<br/>
<b>-XX:IdleTuningMinIdleWaitTime</b>, and<br/>
<td valign="top">In addition to the support already available, there is the ability to maintain a minimal memory footprint during the life time of an application. See:<br/>
<b>-XX:[+|-]IdleTuningCompactOnIdle</b>,<br/>
<b>-XX:[+|-]IdleTuningGcOnIdle</b>,<br/>
<b>-XX:IdleTuningMinIdleWaitTime</b>, and<br/>
<b>-XX:IdleTuningMinFreeHeapOnIdle</b>
</td>
</tr>
Expand Down Expand Up @@ -263,12 +263,11 @@ The following issues (in numerical order) relate to test failures:
<br/>[#2363](https://github.com/eclipse/openj9/issues/2363) systemtest failed to build Test-sanity.system-JDK8-linux_390-64_cmprssptrs
<br/>[#2385](https://github.com/eclipse/openj9/issues/2385) DaaLoadTest_daa1_0 Test-sanity.system-JDK10-linux_x86-64 Segmentation error vmState=0x000507ff
<br/>[#2472](https://github.com/eclipse/openj9/issues/2472) cmdLineTester_jvmtitests_hcr_OSRG_nongold_1 Test-extended.functional-JDK10-linux_x86-64 rc004 gpf



Because some tests are not yet enabled, functional problems might not be exposed. In addition, some IBM authored functional verification testing is not yet contributed to Eclipse, such as issue [#724](https://github.com/eclipse/openj9/issues/724).

## Other changes

The issues addressed in this release are listed at [Eclipse OpenJ9 v0.9.0](https://github.com/eclipse/openj9/releases/tag/openj9-0.9.0).