Can I apply a BP on top of a PSU? Or vice versa?

This question was in my inbox this morning raised by a customer via a colleague.

“Can I apply a BP on top of a PSU? Or vice versa?”

Our feeling said:
Yes, but you’ll have to deinstall the PSU first before applying the BP.

Having a feeling is one thing, knowing the truth is better. And as I have so much fun by applying PSUs and BPs back and forth since two weeks I thought “let’s give it a try”. So here we go …

Apply a BP on top of a PSU

This is my starting point – Oracle Database 12.1.0.2 with PSU October 2015, the last state in my VBox environment since I experiment with parameters and packages at the moment.

And this is the result when trying to apply the BP from April 2016 on top:

[CDB2] oracle@localhost:/media/sf_CTEMP/22899531/22899531/22806133
$ opatch apply
Oracle Interim Patch Installer version 12.1.0.1.10
Copyright (c) 2016, Oracle Corporation.  All rights reserved.


Oracle Home       : /u01/app/oracle/product/12.1.0.2
Central Inventory : /u01/app/oraInventory
   from           : /u01/app/oracle/product/12.1.0.2/oraInst.loc
OPatch version    : 12.1.0.1.10
OUI version       : 12.1.0.2.0
Log file location : /u01/app/oracle/product/12.1.0.2/cfgtoollogs/opatch/opatch2016-05-03_10-26-37AM_1.log

Verifying environment and performing prerequisite checks...

Conflicts/Supersets for each patch are:

Sub-Patch : 20243804

        Bug Conflict with Sub-Patch 21359755
        Conflicting bugs are:
        18966843, 19468991, 19032777, 19587324

[..]


Following patches have conflicts: [   21359755   22806133 ]
Refer to My Oracle Support Note 1299688.1 for instructions on resolving patch conflicts.

UtilSession failed: Patch 21359755 is a composite patch which could not be rollback.

Log file location: /u01/app/oracle/product/12.1.0.2/cfgtoollogs/opatch/opatch2016-05-03_10-26-37AM_1.log

OPatch failed with error code 73

Ok, our suspicion was correct.

There are a lot of conflicts – I have to remove the PSU first. And of course the recommended conflict check would have given me the same result. Furthermore I think I have read this a while back in one of the central notes about PSUs and BPs in MOS as well.

Removing the PSU from October 2015 first

Removing a PSU or BP is very simple and straight forward (and well described in the ReadMe.html coming coming with the patch).

[CDB2] oracle@localhost:/media/sf_CTEMP/21359755/21359755
$ opatch rollback -id 21359755
Oracle Interim Patch Installer version 12.1.0.1.10
Copyright (c) 2016, Oracle Corporation.  All rights reserved.

Oracle Home       : /u01/app/oracle/product/12.1.0.2
Central Inventory : /u01/app/oraInventory
   from           : /u01/app/oracle/product/12.1.0.2/oraInst.loc
OPatch version    : 12.1.0.1.10
OUI version       : 12.1.0.2.0

Log file location : /u01/app/oracle/product/12.1.0.2/cfgtoollogs/opatch/21359755_May_03_2016_10_41_54/rollback2016-05-03_10-41-54AM_1.log

Patches will be rolled back in the following order:
   21359755   20831110   20299023   19769480
The following patch(es) will be rolled back: 21359755  20831110  20299023  19769480
Sub-patches of a composite series are being rolled back. The system will be returned to a state where all subpatches are rolled back.

[..]

Please shutdown Oracle instances running out of this ORACLE_HOME on the local system.
(Oracle Home = '/u01/app/oracle/product/12.1.0.2')

Is the local system ready for patching? [y|n]
y

User Responded with: Y
Rolling back patch 21359755...

[..]

RollbackSession removing interim patch '19769480' from inventory Log file location: /u01/app/oracle/product/12.1.0.2/cfgtoollogs/opatch/21359755_May_03_2016_10_41_54/rollback2016-05-03_10-41-54AM_1.log OPatch succeeded.

Afterwards please make sure to run ./datapatch -verbose to rollback the SQL changes as explained in section 4 of the README.html (and of course all other steps mentioned there).

Apply the BP from April 2016

I don’t want to repeat myself as I wrote already about this positive experience a few days ago:

Oracle Database BP April16 applied successfully

I continued this blog post on a later occasion here:

Can I apply a BP on top of a PSU? Or vice versa? PART 2

Further Information?

You’ll find recent related postings on this blog here:

–Mike

8 thoughts on “Can I apply a BP on top of a PSU? Or vice versa?

  1. Mike,

    As per Doc ID 1962125.1, I see that Bundle Patch (BP) is meant only for For Exadata platforms and For 12.1.0.2 systems using DB In-Memory. For any other RAC/non-RAC, only GI PSU/DB PSU is applicable.
    Could you please clarify/confirm this detail as well here.

    Thanks
    Laksh

  2. @Laksh:

    Sorry for my late reply but currently Support is changing all the naming in MOS documents. It is simply not correct anymore to name those fixes "Exadata" or "In-Memory" Bundle Patches as they are available for all platforms – and Support recommends them now over the PSUs.

    Cheers
    Mike

  3. Hi Mike,
    Quick question, we have 3-5 PSUs applied on our Oracle 12c servers depending on when they were setup.

    To apply Bundle Patches in future, do we need to roll back all the applied PSUs first?

    Thanks,
    Mark.

  4. Yes, I did – the section 4 of the README.html explains to run ./datapatch -verbose afterwards as well.

    4.1 Patch Deinstallation Instructions for a Non-RAC Environment

    Follow these steps:

    Shut down all instances and listeners associated with the Oracle home that you are updating. For more information, see Oracle Database Administrator’s Guide.

    Run the OPatch utility specifying the rollback argument as follows.

    opatch rollback -id 24006101

    If there are errors, refer to Section 5, "Known Issues".

    4.2 Patch Post-Deinstallation Instructions for a Non-RAC Environment

    After deinstalling the patch, perform the following actions:

    Section 4.2.1, "Run the datapatch Utility"

    Section 4.2.2, "Upgrade Oracle Recovery Manager Catalog"

    Sorry for not including this – I’d hope that saying "Removing a PSU or BP is very simple and straight forward (and well described in the ReadMe.html coming coming with the patch)." should be fine. My intention was not to show every step – but I’ll update the blog post with an additional hint.

    Thanks for commenting and sorry for the misunderstanding.

    Mike

  5. Pingback: Can I apply a BP on top of a PSU? Or vice versa? PART 2 | Upgrade your Database - NOW!

  6. Pingback: Are BPs. PSUs and Proactive BPs cumulative? | Upgrade your Database - NOW!

  7. Pingback: PSU or BP? Patch Set Update or (Proactive) Bundle Patch? | Upgrade your Database - NOW!

Leave a Reply

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