AutoUpgrade New Features: Get Latest JDK Patches

In an Oracle home, you find a Java installation – a full JDK.

cd $ORACLE_HOME
ls -l jdk

Some of the tools related to Oracle AI Database are Java-based, like AutoUpgrade, making it convenient to have.

How do you patch the JDK in your Oracle home?

Updating JDK

When you apply a Release Update to your database, you’re also updating your JDK. Those patches are part of the Release Update.

Here are two Oracle homes with different Release Updates:

cd /u01/app/oracle/product/dbhome_1927
jdk/bin/java -version

java version "1.8.0_441"
Java(TM) SE Runtime Environment (build 1.8.0_441-b07)
[   Java HotSpot(TM) 64-Bit Server VM (build 25.441-b07, mixed mode)](https://docs.oracle.com/en/database/oracle/oracle-database/26/upgrd/patch-parameters-autoupgrade-config-file.html#UPGRD-GUID-A7E6221E-5964-4553-9A63-61B2E4AB1CBD)

cd /u01/app/oracle/product/dbhome_1929
jdk/bin/java -version

java version "1.8.0_461"
Java(TM) SE Runtime Environment (build 1.8.0_461-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.461-b11, mixed mode)
  • Notice how the JDK is newer in the later Release Update.

So, all’s good, right?

The Latest Ones

The Java team builds its patches around the same time as the database team builds the Release Update.

This means that the JDK patches you find in a Release Update are from the previous quarter. There’s simply not enough time to include the very latest JDK patches in the Release Update. We also need time for regression testing and other tasks.

So, the very latest JDK patches are made available as a one-off patch.

You can find the patch number of the latest JDK patch in JDK and PERL Patches for Oracle Database Home and Grid Home (Doc ID 2584628.1). Apply that and you’re fully up to date.

AutoUpgrade

You can instruct AutoUpgrade to get the latest available JDK patches using the jdk keyword in your patch configuration.

patch1.patch=RU,OPATCH,JDK

Here’s an example of two 19.29 Oracle homes – one without and one with the JDK patch:

cd /u01/app/oracle/product/dbhome_1929
jdk/bin/java -version

java version "1.8.0_461"
Java(TM) SE Runtime Environment (build 1.8.0_461-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.461-b11, mixed mode)

cd /u01/app/oracle/product/dbhome_1929jdk
jdk/bin/java -version

java version "1.8.0_471"
Java(TM) SE Runtime Environment (build 1.8.0_471-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.471-b11, mixed mode)
  • Notice how the version changes from 461 to 471.

Daniel’s Recommendation

Now that it has become so easy to update the JDK, I recommend doing it.

Security is paramount!

I see minimal risk in doing that.

  • The Java installation in Oracle Database 19c is version 8 that is very mature.
  • In Oracle AI Database 26ai, it is Java 11 that is also very mature.
  • Those two Java releases are in a part of their lifecycle where a few things are updated.
  • I recall no major issues caused by a JDK patch.

But what do you think?

  • Are you already updating the JDK, or do you plan to do so in the future?
  • Have you experienced issues with JDK in your Oracle home? Let me know in the comments below.

Happy patching!

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.