JVM

Upgrading a PDB with JVM may result in ORA-7445 joevm_invokevirtual

As you know, this blog is also my brain dump about Oracle topics. Since this one happened yesterday, mostly at night with the help of my team mates and the Java team, I’d like to write it down into this blog post: Upgrading a PDB with Java may result in ORA-7445 joevm_invokevirtual() as it is still fresh and may affect you as well. If you don’t have PDBs, if you don’t have Java (or JVM) in it or if you upgraded already to Oracle Database 19c, you can stop reading now.

What

Continue reading...

Do you need the Mitigation Patch in CDB$ROOT and all PDBS?

Thanks to Axel Delin for asking this very reasonable question on the blog. Do you need the Mitigation Patch in CDB$ROOT and all PDBS? Background for this question is that Axel can’t remove JVM but doesn’t use it. A typical case we cover in our slides and presentations as well. And in this case, the Mitigation Patch will become your friend. Please note: If you DON’T have JAVAVM in your database, you won’t need to pay attention and instead could stop reading now.

Do you need the Mitigation Patch in CDB$ROOT and all PDBS?

Photo by Mick Truyts on Unsplash

Mitigation Patch

You can read more about the Mitigation Patch, and …

Continue reading...

Patching all my environments with the January 2021 OJVM Bundles

You may have read my blog post from the other day about patching my environments with the January 2021 Release Updates. But as I installed now Java in all my databases for testing purposes, I will quickly demonstrate how Patching all my environments with the January 2021 OJVM Bundles works.

Security Alert January 2021

Let me start with the Security Alert for January 2021. And don’t forget to take a look at the Oracle Database Server Risk Matrix for January 2021. This time, the is a 4.8 risk score issue with …

Continue reading...

Does OJVM patching require a specific Database Release Update?

This question came up several times in the past days: Does OJVM patching require a specific Database Release Update? People mentioned that there’s a significant difference between the OJVM Patch Readme between Oracle 12.2.01 and Oracle 18.4.0.

Photo by Jimmy Ofisia on Unsplash

What’s the point?

In the OJVM (Oracle Java Virtual Machine) Patch Readme for Oracle Database 12.2.0.1 a sentence clarified that you can combine different states of OJVM and Database patch bundle with each other. Your database home could have been patched with the April 2018 Update, whereas you decided to apply the October 2018 OJVM patch.

The …

Continue reading...

Are OJVM patches included in the Oracle 12.2 RU / RUR?

Are OJVM patches included in the Oracle 12.2 RU / RUR?I have received this question multiple times in the past days, especially when I presented at the Slovenian Oracle User Group Conference about the new Release and Patching Mode but also via emaill: Are OJVM patches included in the Oracle 12.2 RU / RUR? Let me clarify this in the below blog post.

Are OJVM patches included in the Oracle 12.2 RU / RUR?

At first I did check MOS Note: 1929745.1 – Oracle Recommended Patches — “Oracle JavaVM Component Database PSU and RU” (OJVM PSU and OJVM RU) Patches.But besides having RU mentioned in the Note’s title and …

Continue reading...

JAVAVM and XML Clean Up in Oracle Database 11.2-19c

JAVAVM and XML Clean Up in Oracle Database 11.2-12.2JAVAVM and XML clean up in Oracle Database 11.2-19c is a tough topic. Many have suffered from the rolling patch upgrade issues with the OJVM (Oracle Java Virtual Machine) even though most of the issues have been cured with the recent patches.

Please see my previous blog posts starting here:

And please see also this very important MOS Note: 2217053.1 – RAC Rolling Install Process for the “Oracle JavaVM Component Database

Continue reading...

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

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

MOS Note released explaining patching without STARTUP UPGRADE mode

An important note regarding OJVM rolling patching has been published on MyOracle Support:

MOS Note: 2217053.1
RAC Rolling Install Process for the “Oracle JavaVM Component Database PSU” (OJVM PSU) Patches

“Beginning with the Jan2017 OJVM PSU patchset for 11.2.0.4 and

Continue reading...

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

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

What is missing with the “Mitigation Patch?

Michael, the team lead from a large Oracle customer mailed me the other day. He wanted to disable Java on all their +600 databases by using the Mitigation Patch for OJVM. But he received a strange error when trying to enable the …

Continue reading...

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

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

What is the “Mitigation Patch?

In MOS Note:1929745.1 – Oracle JavaVM Component Database Patches there’s a section called What is the Mitigation Patch. It says:
For situations where the latest OJVM PSU cannot be installed immediately there is a “Mitigation Patch” that can be used. The “Mitigation

Continue reading...

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

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

Important Notes

Continue reading...

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 …

Continue reading...

OJVM patch: Standby-First patching, yes or no?

I have blogged in the past more than once about the “wonderful” topic of OJVM patching.

Anyhow,  I’d like to summarize a few typical questions sent to me in the past months regarding OJVM patching.

Do I need to apply the OJVM patch every time I apply a PSU or BP?

Unfortunately this is not a one-time-and-then-you-are-set operation. You’ll have to do it every time.

How do I find out if OJVM is used in my database?

I tried to nail this down in this blog post here:

But …

Continue reading...

Oracle 12.2: OJVM will no longer support compilation of SQLJ source – and JPub does not get shipped anymore

In Oracle Database 12.2.0.1, OJVM will no longer support the compilation of SQLJ source or executing SQLJ classes.

SQLJ on the client side will continue to be developed, shipped and supported.  Only the part inside the DB is affected. Existing SQLJ code that runs inside the DB will need to be re-coded to use generic JDBC.

Furthermore JPubublisher (client-side and inside-DB) will not get shipped anymore with Oracle Database 12.2. It got removed from the RDBMS code. There is no replacement.

See here:

https://docs.oracle.com/en/database/oracle/oracle-database/12.2/upgrd/desupported-features-oracle-database-12c-r2.html#GUID-12BE00C5-D043-43DE-BCE0-2D3BD400AE29

–Mike…

Continue reading...

Oracle Database 12c pre-upgrade scripts and JAVAVM

This is a great example of why you should always review the README file when upgrading to a new release. Here is an issue that we found during customer beta testing, and that you will want to be aware of if you are upgrading to Oracle Database 12c and do not have the JAVAVM component in your database. The following text has been added to the 12.1 Readme under Section 1.1:

TITLE: Pre-Upgrade Tool Does Not Generate Output Logs 

The pre-upgrade tool, preupgrd.sql, is not able to create a directory to
store the output files if the JAVAVM component
Continue reading...