The OJVM Patching Saga – and how to solve it – Part I

Related Posts on
The OJVM Patching Saga – and how to solve it“:

Who’s the Product Manager for Patching?

First of all, I’m neither a patching expert nor am I the Product Manager for Patching. There’s no such role as far as I know but there are people inside Oracle who have way more clue about this topic. There’s a group inside Oracle’s development owning this topic but I’m not working in this team.

Still I’m interested in patching.
Why? Simply because patching goes usually in conjunction with an upgrade or a migration first. Our recommendation for years is this straight forward approach:

  1. Download and install the most recent release (in most cases the newest patch set which is a full release since Oracle 11.2.0.2)
  2. Then apply the most recent Bundle Patch (or Patch Set Update) on top
  3. Then apply the important one-off (single) patches on top (see our slide deck for a guided how-to)
  4. Then upgrade or migrate

This way you’ll make sure to avoid the most terrible issues known to Oracle already. Of course there’s no guarantee that this will avoid all potential issues and pitfalls. But when dealing with Oracle Support later on (or myself in case we work together on a reference project) it’s much easier for you and us as we won’t waste time to diagnose issues which are already fixed.

Ah, and there’s my background of 6 years of RDMBS mission critical support when I started at Oracle almost 20 years ago.

The OJVM Drama or Saga

Well … procrastination is a terrible but very human habit. The OVJM topic is on my radar for 6 months now. Actually even longer but more and more people approached me in the past months asking so many questions about OJVM patching. And I realized that I don’t have an answer in all cases. As I said above, I’m not a patching expert.

What is this thing I’m calling the OJVM drama or saga? And what the heck is OJVM?

Very important:
If you don’t have a RAC (Real Application Clusters) system or intend to do Standby-First Patching (see MOS Note: 1265700.1 – Data Guard Standby-First Patch
Apply
) you can stop reading here. This “drama” won’t affect you at all.

OJVM is the Oracle Java Virtual Machine which gives you the ability to execute JAVA code directly in the database. The glossary says: “A standard, Java-compatible environment that runs any pure Java application“. If you intend to search for it please use “Oracle JVM” or “JVM” but not “OJVM” as it is not known in the documentation as OJVM.

The saga started actually with the October 2014 PSU (Patch Set Update). It included a patch for the Oracle JVM which required the database to be restarted. And this meant that the patch is not RAC rolling installable anymore.

Older Blog Posts about OJVM?

Yes of course, I did blog about this already:

But my focus in these posts is to show you potential solutions and share my experience with workarounds.

So please stay tuned 😉

–Mike

7 thoughts on “The OJVM Patching Saga – and how to solve it – Part I

  1. Hi ,
    above you seem to say that if one does not have a RAC system , so only single instance database , then we don’t need to apply the OJVM? Is this correct and can you point me to a doc in MOS where this is stated?

    Thanks
    Anthony

  2. Anthony,

    no – this is not what I’m saying. I’m saying that if you don’t have a RAC or a Standby where you do Standby-First Patching you don’t have to take care on the inconveniences of OJVM patching restrictions as you can’t do a rolling PSU or BP upgrade anyways in a single instance environment.

    Therefore you won’t see any difference regarding the patching process on single instance, no matter if you have OJVM or not.

    And no, if you have OJVM you MUST apply the patches as otherwise you’ll miss the security fixes. Or you’ll use the mitigation patch to disable the java subsystem. Or you don’t install OJVM to bypass those things.

    Cheers
    Mike

  3. Pingback: The OJVM Patching Saga – and how to solve it – Part II | Upgrade your Database - NOW!

  4. Pingback: The OJVM Patching Saga – and how to solve it – Part III | Upgrade your Database - NOW!

  5. Pingback: The OJVM Patching Saga – and how to solve it – Part IV | Upgrade your Database - NOW!

  6. Pingback: The OJVM Patching Saga – and how to solve it – Part V | Upgrade your Database - NOW!

  7. Pingback: JAVAVM and XML Clean Up in Oracle Database 11.2-12.2

Leave a Reply

Your email address will not be published. Required fields are marked *