Patch

DBMS_OPTIM_BUNDLE and Out-Of-Place Patching

Well, you see, this is most likely my special DBMS_OPTIM_BUNDLE week. And since I receive quite a number of questions, it may be good to discuss here about DBMS_OPTIM_BUNDLE and Out-Of-Place Patching?

DBMS_OPTIM_BUNDLE and Out-Of-Place Patching

Photo by Didssph on Unsplash

Out-of-place Patching

When you patch out-of-place with a new home – which is clearly our recommendation – you may see another tiny pitfall with DBMS_OPTIM_BUNDLE.

When you check DBA_DIRECTORIES, you will find two directories being related to DBMS_OPTIM_BUNDLE.

SQL> select directory_name, directory_path from dba_directories where directory_name like '%OPTIM%'

DIRECTORY_NAME	     DIRECTORY_PATH
-------------------- --------------------------------------------------
DBMS_OPTIM_LOGDIR    /u01/app/oracle/product/19/cfgtoollogs
DBMS_OPTIM_ADMINDIR  /u01/app/oracle/product/19/rdbms/admin

You see the “19” in the …

Continue reading...

DBMS_OPTIM_BUNDLE and disabling another fix

Yes, DBMS_OPTIM_BUNDLE week it is. As I received so many good questions and input after my blog post whether you should enable _fix_controls with DBMS_OPTIM_BUNDLE or not, now I can easily fill the rest of the week with new content. Today it will be about a customer’s question regarding DBMS_OPTIM_BUNDLE and disabling another fix.

Disabling another fix

The setup is pretty simple. Stefan wanted to disable a different fix while he had all fixes from the most recent RU enabled on purpose. Sounds simple but has a dangerous pitfall.

This is what …

Continue reading...

After patching, Spatial Index creation fails with ORA-13249

Thanks again to Peter Lehmann from T-Systems for highlighting this issue to me. After patching, Spatial Index creation fails with ORA-13249. And Peter’s customer was quite worried. But see what may have caused this, and how we fixed it.

After patching, Spatial Index Creation Fails with ORA-13249

Photo by Bill Oxford on Unsplash

What happened?

Peter patched a system from 19.10.0 to 19.11.0. This database has undergone an upgrade from 12.2.0.1 to 19.7.0 before, then got patched to 19.9.0 before. The database has the Oracle Locator only but no Spatial installed. The patching including datapatch worked fine. All seemed to be good. Until the customer tried to …

Continue reading...

Patching all my environments with the July 2021 Patch Bundles

It’s patching day again. Hurray! Or not. I realize that at patching day, the 19c bundles are all missing. So wrote this blog post a bit after the usual release day. In my case this will include Oracle 19.12.0 RU and the July 2021 RU for Oracle 12.2.0.1. Please find the details about Patching all my environments with the July 2021 Patch Bundles below.

As usual, an important annotation upfront: I patch in-place due to space issues. But in reality, you please patch always out-of-place with a separate home. Please see this blog post

Continue reading...

aioug Webinar Series July 2021: Database Upgrade and Migrations

Many people on the northern hemisphere will escape during July into the summer holidays. But we won’t. Instead, thanks to Sai Penumuru, we will give seven webinars for the aioug. And we are looking forward to talk to you soon at the aioug Webinar Series July 2021: Database Upgrade and Migrations.

aioug Webinar Series July 2021: Database Upgrade and Migrations

When will it happen?

This morning I looked into my calendar. And I realized: Wow, July 2021 is just a few days away. Roy will start with the first session on Friday, July 2. And then myself, Rodrigo, Daniel, Fred and Bill will …

Continue reading...

AutoUpgrade may run into a timeout when GI is lower than 19.10.0

The other day I received a question from a colleague about the risk of having GI and database both not being on the same RU. And a long while ago I blogged about it. We recommend that you keep it in synch. But you don’t have to. At the same time I received a wish from Ernst Leber to post something on the blog he and his colleague had trouble with when upgrading to 19c in a RAC environment. AutoUpgrade hung. But he titled his email with “not an AutoUpgrade problem!”. Still I agree, it is worth to write …

Continue reading...

Welcome onboard at Oracle: Rodrigo Jorge

We are thrilled to announce that as of June 7, 2021 we have a new member in our Product Management team: Rodrigo Jorge joins our group as Product Manager for Database Cloud Migrations, Upgrade and Patching. Many of you may know Rodrigo already. He “was” an Oracle ACE Director until June 6, presented at many conferences and user group events – and he has an excellent technical blog. We are really excited to welcome Rodrigo at Oracle.

Who is Rodrigo?

Rodrigo is joining us from Accenture / Enkitec. He’s very well known in
Continue reading...

Some very important MOS Notes when you upgrade and patch

Today, I would like to publish only a short blog post with some hints to MyOracle Support (MOS) notes we find quite helpful. The idea of all these notes I will list below is to help you finding the right patches before you upgrade or patch to Oracle 19c. So see our collection of Some very important MOS Notes when you upgrade and patch below.

Why do you need patch bundles?

At first, it is always our recommendation to upgrade to the most recent Release Update (RU). This is currently Oracle 19.11.0 while I’m …

Continue reading...

ORA-1422 and ORA-6512 from SYS.DBMS_STATS in Post Upgrade

Ernst Leber sent me an email today. He hit an error at a customer upgrading to Oracle 19.9.0 on Exadata with AutoUpgrade. ORA-1422 and ORA-6512 from SYS.DBMS_STATS in Post Upgrade were signaled – and he better flashed back to the Guaranteed Restore Point. He found even a MOS note but still had questions. So time to blog about it in case you hit this error sequence as well.

What happens, and when does it happen?

At first, this is not an AutoUpgrade issue. You may see the same error stack in the post upgrade …

Continue reading...

Why do you need a password to download older patch bundles?

A customer raised this question recently: Why do you need a password to download older patch bundles? The customer wanted to download a PSU from July 2020 on the MyOracle Support (MOS) platform but this wasn’t possible without a password.

Why do you need a password to download older patch bundles?

Photo by Privecstasy on Unsplash

Why is there an extra password required?

In MOS Note: 888.1 – Master Note for Database Proactive Patch Program we documented the following:

1.4 Policy to obtain older Oracle Database Bundles, Updates & Revisions

Through our review of customer Service Requests (SRs), we find that customers frequently run into issues because they have unknowingly downloaded

Continue reading...

Oracle 19c Installation with 19.11.0 RU, OJVM and some other fixes

In an previous blog post we showed how to install and patch in one single action. And as I use this technique all the time when I setup new homes, would like to show you an Oracle 19c Installation with 19.11.0 RU, OJVM and some other fixes. The purpose of this blog post is mainly to demonstrate again how you can install and patch in one action. But also to help you avoiding a pitfall when you apply the OJVM RU from April 2021.

What do we need?

At first, let us …

Continue reading...

Patching all my environments with the April 2021 Patch Bundles

Oh well, time flies. And it is April 2021, and hence I will start Patching all my environments with the April 2021 Patch Bundles. In my case, this will be 19.11.0 and 12.2.0.1 Release Updates. But there will be an additional blog post for the OJVM bundle, too.

As usual, an important annotation upfront: I patch in-place due to space issues. But in reality, you please patch always out-of-place with a separate home. Please see this blog post about how to apply the RU directly when you provision a new home with OUI

Continue reading...

Data Pump Super Patch for Oracle 19.10 and newer

Just a few days we released a Data Pump Super Patch for Oracle 19.10 and newer. “Newer” refers to the fact that once 19.11.0 will be available, this merge patch I’m writing about will be available as well right away (sorry, got delayed a bit). And if you work with Data Pump, you may want to consider this performance patch collection.

Why do you need this patch?

Many customer will know the issue that adding changes with datapatch may take a long time as soon as dpload.sql is involved. And this …

Continue reading...

Important Recommended Patches for Oracle Database 19c

It took a while – but now you can find a new MyOracle Support (MOS) Note with a list of Important Recommended Patches for Oracle Database 19c. It is actually a must-read, regardless whether you are upgrading or migration to 19c, or in case you are already on 19c.

What do you get?

Please check MOS Note: 2720807.1 – Oracle Database 19c Important Recommended One-off Patches. It gives you a list of important fixes for Oracle Database 19c. In the initial version of the note you could select for each available Release …

Continue reading...

Oracle Database 19.10.0 and Blockchain Tables and COMPATIBLE

Many of you recognized that we delivered a new feature with Oracle Database 19.10.0, the January 2021 Release Upgrade. So I’d like to put a few interesting things together from the upgrade and migration perspective regarding Oracle Database 19.10.0 and Blockchain Tables and COMPATIBLE.

What are Blockchain Tables?

At first, I don’t want to repeat what other people have blogged and written about already. You may just go through the blog posts of Connor McDonald and Tim Hall and others to learn more about this cool feature.

Continue reading...

You may need a one-off for DBMS_OPTIM_BUNDLE in 19.10.0

It’s been a while since I blogged about the DBMS_OPTIM_BUNDLE – and to me, the package is still sort of a mystery. Ideally you can least and enable or disable behavior changing optimizer fixes per RU. And in Oracle 19.10.0, you will find a new surprise. So You may need a one-off for DBMS_OPTIM_BUNDLE in 19.10.0.

You may need a one-off for DBMS_OPTIM_BUNDLE in 19.10.0

Photo by Jonas Denil on Unsplash

Quick Recap

Just in case you haven’t dealt with DBMS_OPTIM_BUNDLE yet or for a while, a quick recap.

With this procedure, you can list the available patches to turn on or off at will:

SQL> set serveroutput 
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...

Why is there a lib32 directory in Oracle 19.8.0 and 19.9.0?

I received two emails from different customers within a week – and both asked the same thing: Why is there a lib32 directory in Oracle 19.8.0 and 19.9.0? In one case, it was more like “We are wondering” but in the other case it caused issues during patching.

Why is there a lib32 directory in Oracle 19.8.0 and 19.9.0?

Photo by Erik Mclean on Unsplash

What happens?

Due to a packaging issue most likely, there is a lib32 directory appearing after you patch your homes to either 19.8.0 or 19.9.0. With the next RU, 19.10.0, this should not be the case anymore.

Why does this sound strage?

The first customer who …

Continue reading...

Apply Patch 31088341 before Upgrade to prevent ORA-1403

As I learned from a customer this week, this patch is a must have when you use Partitioning and you attempt to upgrade to Oracle 19.9.0 or earlier. So please apply patch 31088341 before Upgrade to prevent ORA-1403 happening.

Apply Patch 31088341 before Upgrade to prevent ORA-1403

Photo by Grant Durr on Unsplash

What is the issue?

This applies to all 19c upgrades at least until 19.9.0.

The fix is included from 19.10.0 Release Update onward. So if you are upgrading to 19.10.0 or higher, you can stop reading here (thanks Pablo for the hint!).

You may see this error pattern in catupgrd0.log:

==Error from catupgrd0.log===

=================================================================
Continue reading...

ORA-29702 – and your instance does not startup in the cluster anymore

This is the right blog post for a Friday 13th. And please forgive me – I wanted to put this on the blog earlier as two of my customers hit this weeks ago already. But it must have fallen through the cracks. Still, now it is hopefully not too late to tell you what you should do if you hit ORA-29702 – and your instance does not startup in the cluster anymore. Especially when you tested a database upgrade – and after a restore, the database doesn’t want to start, no matter what you try.

Continue reading...

Why is the 19.9.0 Release Update not available yet for MY platform?

I’ve had a week off and tried to relax and stay away from work topics (which worked quite well this time). The downside is 300+ emails in the inbox. And I spotted several ones already asking: Why is the 19.9.0 Release Update not available yet for MY platform?

Details for Patch 123456789 not found.

At first, this is not a uncommon question. And the root cause is two-fold. As you know from my quarterly blog posts such as Patching all my environments with the October 2020 Patch Bundles, these notes are important:

Continue reading...

Solution for ORA-02303 from JSON_OBJECT_INVALID in upgrade to 19c

I just learned yesterday about this error – and as it seems to happen occasionally, you may want to read more about the Solution for ORA-02303 from JSON_OBJECT_INVALID in upgrade to 19c.

What happens?

You are upgrading a database to Oracle 19c, and you see this error pattern:

CREATE OR REPLACE TYPE JSON_Object_T AUTHID CURRENT_USER UNDER JSON_Element_T(
*
ERROR at line 1:
ORA-02303: cannot drop or replace a type with type or table dependents

This is coming when catjson.sql gets executed.

Why does it happen?

Unfortunately the FORCE option is missing when we create …

Continue reading...

APAC OUG: Welcome to the Jungle – Database Patching Insights

October 19-30 – APAC Virtual Groundbreakers Tour

Continue reading...

Pitfall: ORA-1843 – NOT A VALID MONTH in Oracle 19.4 – 19.8

Today, I’d like to write about a tiny little issue – which can cause some real trouble in Oracle 19c. This blog post is about the Pitfall: ORA-1843 – NOT A VALID MONTH in Oracle 19.4 – 19.8.

The Testcase

My testcase is super-simple – and you can reproduce it even without any object in 2 seconds (one for “copy“, the other for “paste“). Simply execute this query:

select to_date('20191120','RRMMDD') from dual;

Or this one where I replace “RR” with the more common “YY”:

select to_date('20191120','YYMMDD') from dual;
Continue reading...