Skip to content

Commit

Permalink
Merge pull request #19970 from Sreekala-Gopakumar/46RelNoteUpdte
Browse files Browse the repository at this point in the history
Updated 0.46.0 Release note with new features
  • Loading branch information
tajila authored Aug 8, 2024
2 parents 7c8005e + a2d1cb5 commit dc0af4f
Showing 1 changed file with 44 additions and 6 deletions.
50 changes: 44 additions & 6 deletions doc/release-notes/0.46/0.46.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ The following table covers notable changes in v0.46.0. Further information about
<tr>
<td valign="top"><a href="https://github.com/ibmruntimes/openj9-openjdk-jdk22/pull/42">#42</a>, <a href="https://github.com/ibmruntimes/openj9-openjdk-jdk21/pull/140">#140</a>, <a href="https://github.com/ibmruntimes/openj9-openjdk-jdk17/pull/337">#337</a>, <a href="https://github.com/ibmruntimes/openj9-openjdk-jdk8/pull/743">#743</a>, <a href="https://github.com/ibmruntimes/openj9-openjdk-jdk11/pull/766">#766</a></td>
<td valign="top">MD5 message digest algorithm support is added for OpenSSL.</td>
<td valign="top">All versions</td>
<td valign="top">All versions (All platforms except AIX&reg;)</td>
<td valign="top">OpenSSL native cryptographic support is added for the MD5 message digest algorithm, providing improved cryptographic performance. OpenSSL support is enabled by default. If you want to turn off support for the MD5 message digest algorithm, set the <tt>-Djdk.nativedigest</tt> system property to <tt>false</tt>.</td>
</tr>
<tr>
Expand All @@ -62,21 +62,59 @@ The following table covers notable changes in v0.46.0. Further information about
<tr>
<td valign="top"><a href="https://github.com/eclipse-openj9/openj9/pull/19585">#19585</a>, <a href="https://github.com/eclipse-openj9/openj9/pull/19619">#19619</a></td>
<td valign="top">The JITServer AOT caching feature is enabled by default at the JITServer server.</td>
<td valign="top">All versions (Linux)</td>
<td valign="top">All versions (Linux&reg; x86, Linux on POWER&reg; (Little Endian), and Linux on IBM Z&reg;)</td>
<td valign="top"><tt>-XX:+JITServerUseAOTCache</tt> is the default setting at the JITServer server now. That means that you don't have to specify the <tt>-XX:+JITServerUseAOTCache</tt> option at the server to enable the JITServer AOT caching feature.

Although this option is by default enabled at the server, it is still disabled for the JITServer clients. The clients that want to use the JITServer AOT caching, must still specify the <tt>-XX:+JITServerUseAOTCache</tt> option on the command line. Also, now the clients don't have to enable the shared classes cache feature to use the <tt>-XX:+JITServerUseAOTCache</tt> option.
</td>
</tr>
<tr>
<td valign="top"><a href="https://github.com/eclipse-openj9/openj9/pull/19554">#19554</a></td>
<td valign="top">A new option <tt>-XX:[+|-]EnableExtendedHCR</tt> is added.</td>
<td valign="top">The extended Hot Code Replace (HCR) capability is disabled by default and the <tt>-XX:[+|-]EnableExtendedHCR</tt> option is added to enable or disable the HCR capability.</td>
<td valign="top">All versions</td>
<td valign="top">By default, the extended Hot Code Replace (HCR) capability in the VM is disabled for all OpenJDK versions. You can enable or disable the HCR capability by using the <tt>-XX:[+|-]EnableExtendedHCR</tt> option.
<td valign="top">By default, the extended HCR capability in the VM is disabled for all OpenJDK versions. You can enable the HCR capability by using the <tt>-XX:+EnableExtendedHCR</tt> option.

The extended HCR feature is deprecated in this release and will be removed in a future release. From OpenJDK 25 onwards, extended HCR will not be supported. Following that, the extended HCR support will be removed from other earlier OpenJDK versions also.
</td>
</tr>
<tr>
<td valign="top"><a href="https://github.com/eclipse-openj9/openj9/pull/19245">#19245</a>, <a href="https://github.com/eclipse-openj9/openj9/pull/19165">#19165</a></td>
<td valign="top">A new system property <tt>-Dcom.ibm.tools.attach.retry</tt> is added to improve <tt>jcmd</tt> attaching in case of the <tt>SocketException</tt> error on Windows&trade; platform.</td>
<td valign="top">All versions (Windows)</td>
<td valign="top">When the <tt>jcmd</tt> tool sends a command to a running VM, the command might throw the <tt>Socket Exception</tt> error on Windows platform. Instead of failing the attaching request, you can specify the number of times the tool retries attaching to the target VM with the new system property, <tt>-Dcom.ibm.tools.attach.retry</tt>.
</td>
</tr>
<tr>
<td valign="top"><a href="https://github.com/eclipse-openj9/openj9/pull/19070">#19070</a></td>
<td valign="top">Core allocation cache statistics per thread is included in the <tt>-Xtgc:allocation</tt> report.</td>
<td valign="top">All versions</td>
<td valign="top">The <tt>-Xtgc:allocation</tt> option prints thread-specific allocation cache (TLH) statistics in addition to the cumulative allocation statistics.
</td>
</tr>
<tr>
<td valign="top"><a href="https://github.com/eclipse-openj9/openj9/pull/19323">#19323</a>, <a href="https://github.com/eclipse-openj9/openj9/pull/19442">#19442</a></td>
<td valign="top">The <tt>-XX:[+|-]ShareOrphans</tt> option is added to control storing of orphan classes in the shared classes cache.</td>
<td valign="top">All versions</td>
<td valign="top">When <tt>-Xshareclasses</tt> was specified, only the class loaders that implemented the OpenJ9's public shared classes cache APIs (and its child class loaders) could store classes to the shared classes cache. Custom class loaders that did not implement these cache APIs couldn't pass the module or class path information to the VM. Classes of such class loaders were not stored to the cache.

Now, you can enable class sharing from all class loaders, irrespective of whether the class loader implements the shared classes cache API, with the `-XX:+ShareOrphans` option.
</td>
</tr>
<tr>
<td valign="top"><a href="https://github.com/eclipse-openj9/openj9/pull/18301">#18301</a>, <a href="https://github.com/eclipse-openj9/openj9/pull/19585">#19585</a></td>
<td valign="top">The <tt>-XX:[+|-]JITServerAOTCacheIgnoreLocalSCC</tt> option is added to control how the JITServer AOT cache feature interacts with the local cache at JITServer client VMs.</td>
<td valign="top">All versions (Linux x86, Linux on POWER (Little Endian), and Linux on IBM Z)</td>
<td valign="top">Earlier, to use the JITServer AOT cache feature, the client VM had to use a shared class cache with some empty space and write permissions. From this release onwards, the default behavior of the client when it uses the JITServer AOT cache is to bypass its local shared classes cache (if one is set up) during JITServer AOT cache compilations. You can disable this feature with the <tt>-XX:-JITServerAOTCacheIgnoreLocalSCC</tt> option.
</td>
</tr>
<tr>
<td valign="top"><a href="https://github.com/eclipse-openj9/openj9/pull/18217">#18217</a></td>
<td valign="top">The <tt>-XdynamicHeapAdjustment</tt> option is added to create a single image file and restore it on various nodes with different memory limits.</td>
<td valign="top">OpenJDK 11 and later (Linux)</td>
<td valign="top">By default, if a checkpoint is taken in a container with no memory limits and then restored in a container with memory limits, the restored VM instance does not detect the memory limits. The new option <tt>-XdynamicHeapAdjustment</tt> automatically adjusts the maximum Java heap size <tt>-Xmx</tt> and minimum Java heap size <tt>-Xms</tt> values such that they are within the physical memory limitations on the system.
</td>
</tr>

</tbody>
</table>

Expand All @@ -99,7 +137,7 @@ The v0.46.0 release contains the following known issues and limitations:

<tr>
<td valign="top"><a href="https://github.com/eclipse-openj9/openj9/pull/19833">#19833</a></td>
<td valign="top">Class comparison for the shared cache might not not detect the removal of method access modifiers. For example, a change of a method from public to package-private.</td>
<td valign="top">Class comparison for the shared cache might not detect the removal of method access modifiers. For example, a change of a method from public to package-private.</td>
<td valign="top">All</td>
<td valign="top">If you ran your application with the <tt>-XX:+ShareOrphans</tt> option, then recompiled classes after removing the method access modifier and reran with the <tt>-XX:+ShareOrphans</tt> option, the old version of the class might still be used.</td>
<td valign="top">Remove the <tt>-XX:+ShareOrphans</tt> option and rerun.</td>
Expand All @@ -109,7 +147,7 @@ The v0.46.0 release contains the following known issues and limitations:
<td valign="top"><a href="https://github.com/eclipse-openj9/openj9/pull/19833">#19833</a></td>
<td valign="top"><tt>java.lang.StackTraceElement.getClassLoaderName()</tt> might return null for classes that are stored in the shared cache.</td>
<td valign="top">All</td>
<td valign="top">When the <tt>-XX:+ShareOrphans</tt> option is specified, <tt>java.lang.StackTraceElement.getClassLoaderName()</tt> might incorrectly return null on a class loader that has a name. If a class loader has a name, the correct behaviour is to return the name.</td>
<td valign="top">When the <tt>-XX:+ShareOrphans</tt> option is specified, <tt>java.lang.StackTraceElement.getClassLoaderName()</tt> might incorrectly return null on a class loader that has a name. If a class loader has a name, the correct behavior is to return the name.</td>
<td valign="top">Remove the <tt>-XX:+ShareOrphans</tt> option and rerun.</td>
</tr>

Expand Down

0 comments on commit dc0af4f

Please sign in to comment.