SYMPTOM
“datapatch -verbose” failes on 12.1.0.2 database with following errors:
$ ./datapatch -verbose -skip_upgrade_check
...
..
.
Error: prereq checks failed!
patch 22139226: Archived patch directory is empty
Prereq check failed, exiting without installing any patches.
...
..
.
Check $ORACLE_HOME/sqlpatch, there is no files for patch 22139226 to be used for rollback.
$ ls -ltr $ORACLE_HOME/sqlpatch|grep 22139226 $
CAUSE
- The database is just migrated from old ORACLE_HOME to a new ORACLE_HOME.
- The database is just switched over or failed over. The applied patches are different between ORACLE_HOME of primary and standby.
SOLUTION
Copy missing patch files from the old ORACLE_HOME, or from standby ORACLE_HOME to primary ORACLE_HOME.
REFERENCE
datapatch -verbose Fails with Error :” Patch xxxxxx: Archived Patch Directory Is Empty” (Doc ID 2235541.1).