Purpose
Highlighting the importance of CATSBP.SQL / CATSBP , CATBUNDLE.SQL or DATAPATCH after Bundle Patch installation.
Overview
I came accross several problems recently and in the past also, where a specific Oracle error should have been resolved already. At least based on 'opatch lsinventory'.
At the same time dba_registry_history / dba_registry_sqlpatch showed and older state of Bundle Patch, in which that specific Oracle error was still not resolved.
How could this happen?
Well, the answer is really simple. CATSBP.SQL or CATBUNDLE.SQL (respectively) wasn't executed at all or did not finish successfully. This can easely answer why 'opatch lsinventory' and dba_registry_history can contain different Bundle Patch version/ patch state.
But why is this a problem?
Until catsbp.sql / catsbp, catbundle.sql or datapatchis not executed, some or all Bugfixes are not activated. Even if the relevant code change is in place, it is not taken, thus issues
should still arise.
Please don't forget to execute catsbp.sql/ catsbp, catbundle.sql or datapatch at the end of Bundle Patch installation. It is also documented in the README within the Bundle Patch that is located in Marketplace.
As you can see, it is very important to execute this tiny step!
Related SAP Notes/KBAs
SAP KBA 2125248: Is it necessary to execute catsbp.sql/catbundle.sql/postinstall.sql scripts?
SAP KBA 1696147: How to determine the list of Oracle patches or SAP Bundle Patches (SBP) that are installed in SAP system
SAP KBA 1821953: Running SBP script during Oracle database upgrade to 11g