Oracle Database 12.1 shows information about applied patches in the alert log during instance startup.
I realized that the info is about patch applied on OH only.
The patch information is populated on alert log by calling DBMS_QOPATCH. It is only populated correctly if the database was started in a open mode.
If database is not opened in read-write the alert will show "No Patches" this because is not possible to execute any package with database not opened in read-write.
My frustation is : Since alertlog is to used to store info about current database (not OH only), so make sense Oracle store info about OH only and not about Database?
Recently I create a new database CDB using default template "General purpose or transaction processing" and realized that the bundle patch was not applied on my database, but in the alert log "Dumping current patch information" list all patch of my current OH.
This can lead us to a misinterpretation.
IMO - The "Dumping current patch information" is to show Patch Info applied on current database not about OH only.
Even more I think "Dumping current patch information" must not only show info about current patch applied on my database but check any inconsistency about patch on database and not in OH or patch on OH and not applied on Database.
This situation is very common whem move database between different OH (eg. restore offiste)
This post is only a generic discussion, the main purpose is to invite the Oracle Experts share what think about this matter.
Please shared with me what you think about this matter.
I created a post with more detail about this matter:
https://levipereira.wordpress.com/2016/09/01/dumping-current-patch-information-in-alert-log-12c-can-lead-to-a-misinterpr…
I can be wrong, but i hope not.