ExaCC: GI 18C upgrade precheck at the error ‘ERROR: Patch num not specified correctly’ While Upgrading GI home to 18c from 12c
I am writing this article regrading one issue I encountered while upgrading the grid home 12c to 18c in ExaCC gen 1 cloud. The patch pre check was failing saying “ERROR: Patch num not specified correctly” but I was giving the correct patch name in the desired field . Finally come to know that the dbass tool version we need to downgrade in order to upgrade the grid to 18c ,which was causing the issue .

I will share the high level upgrade steps with issue encountered and solution .
- Check what all patches are available to for grid upgrade using list_upg_patches
[root@exaCC101vm01 ~]# /var/opt/oracle/exapatch/exadbcpatchmulti -list_upg_patches -oh=exaCC101vm01:/u01/app/12.2.0.1/grid INFO: cmd is: /var/opt/oracle/exapatch/exadbcpatch -list_upg_patches -patch_homes=/u01/app/12.2.0.1/grid -dbnames=grid Starting EXADBCPATCH Logfile is /var/opt/oracle/log/exadbcpatch/exadbcpatch_2020-10-11_10:18:39.096476371053.log Config file is /var/opt/oracle/exapatch/exadbcpatch.cfg INFO: gridversion detected : 12.2.0.1.180717 INFO: patching type : psu INFO: images available for upgrades CRS status returned: 1 $VAR1 = { 'last_async_precheck_txn_id' => '11', 'last_async_apply_txn_id' => ' ', 'errmsg' => '', 'err' => '', 'current_version' => '12.2.0.1.180717', 'last_async_precheck_patch_id' => 'upgrade_18', 'current_patch' => '', 'last_async_apply_patch_id' => '', 'patches' => [ { 'patchid' => 'upgrade_18.0.0.0-GI', 'last_precheck_txnid' => '', 'description' => 'GI binaries for upgrade from 12.2.0.1 to 18.0.0.0' } ] };
for the upgrade we can see upgrade_18.0.0.0-GI is available
2. Check for ssh equivalence , since we need to apply the patch to all node ( in rolling manner )
[root@exaCC101vm01 ~]# dcli -l root -g dbs_groups -s "-i privateKey_exacc" hostname exaCC101vm01:exaCC101vm01.domain.oraclecloudatcustomer.com exaCC2vm01: exaCC2vm01.domain.oraclecloudatcustomer.com exaCC3vm01: exaCC3vm01.domain.oraclecloudatcustomer.com exaCC4vm01: exaCC4vm01.domain.oraclecloudatcustomer.com exaCC5vm01: exaCC5vm01.domain.oraclecloudatcustomer.com exaCC6vm01: exaCC6vm01.domain.oraclecloudatcustomer.com exaCC7vm01: exaCC7vm01.domain.oraclecloudatcustomer.com exaCC8vm01: exaCC8vm01.domain.oraclecloudatcustomer.com
3. Run Precheck for the 18c upgrade patch id (upgrade_18.0.0.0-GI) which we get in step 1
[root@exaCC101vm01 ~]# /var/opt/oracle/exapatch/exadbcpatchmulti -precheck_async upgrade_18.0.0.0-GI -dbname=grid INFO: dbname given is grid Use of uninitialized value $dg_inst in string eq at /var/opt/oracle/exapatch/exadbcpatchmulti line 388. INFO: Master transaction id is : 12 12 ERROR: Patch num not specified correctly The above error I was getting , while running the precheck multiple time , then I found Metalink note for which resemble to the similar issue ExaCC: GI 18C upgrade precheck at the error 'ERROR: Patch num not specified correctly' (Doc ID 2576431.1)
4. Solution was to downgrade the dbaas tool version to 18.2.3.1.0.190724
a) Take a backup of config file cp /var/opt/oracle/exapatch/exadbcpatch.cfg /var/opt/oracle/exapatch/exadbcpatch.cfg_bkp dcli -l root -g dbs_groups -s "-i privateKey_hqcl1" cp /var/opt/oracle/exapatch/exadbcpatch.cfg /var/opt/oracle/exapatch/exadbcpatch.cfg_bkp_parwez dcli -l root -g dbs_groups -s "-i privateKey_hqcl1" ls -l /var/opt/oracle/exapatch/exadbcpatch.cfg* 2) Change the below based on your OSS_URL and download the RPM 18.2.3.1.0.190724 /name/18.2.3.1.0/190704/dbaastools_exa.rpm/name/ /name/18.2.3.1.0/190708/dbaastools_exa.rpm/name/ b)After changing the value to required version , try to download rpm the version from oss_url object storage bucket wget https://storage..ocm..oraclecloudatcustomer.com/v1/Storage-idcs-cloudinfra-/dbaas_patch/18.2.3.1.0/190606/dbaastools_exa.rpm [root@exaCC101vm01 tmp]# wget https://storage.domain.oraclecloudatcustomer.com/v1/Storage-idcs-cloudinfra-us//dbaas_patch/18.2.3.1.0/190828/dbaastools_exa.rpm --2020-03-11 10:30:40-- https://storage.domain.oraclecloudatcustomer.com/v1/Storage-idcs-cloudinfra-us//dbaas_patch/18.2.3.1.0/190828/dbaastools_exa.rpm Resolving storage.domain.oraclecloudatcustomer.com… 10.20.20.2, 10.20.20.6 Connecting to storage.domain.oraclecloudatcustomer.com||:443… connected. HTTP request sent, awaiting response… 200 OK Length: 379164824 (362M) [application/octet-stream] Saving to: “dbaastools_exa.rpm.1” 100%[=============================================================================================================================>] 379,164,824 114M/s in 3.2s 2020-10-11 10:30:44 (114 MB/s) - “dbaastools_exa.rpm.1” saved [379164824/379164824] 3) Downgrade the DbaaS tool rpm -qa --last | grep dbaastools_exa rpm -ev dbaastools_exa rpm -ivh dbaastools_exa.rpm rpm -qa --last | grep dbaastools_exa
5.Check on all the nodes , after downgrading the dbass tool version
[root@exaCC101vm01 ~]# dcli -l root -g dbs_groups -s "-i privateKey_hqcl1" rpm -qa --last | grep dbaastools_exa exaCC101vm01: dbaastools_exa-1.0-1+18.2.3.1.0_190828.2338.x86_64 Wed 11 Oct 2020 10:31:21 AM +03 exaCC2vm01: dbaastools_exa-1.0-1+18.2.3.1.0_190828.2338.x86_64 Wed 11 Oct 2020 10:33:21 AM +03 exaCC3vm01: dbaastools_exa-1.0-1+18.2.3.1.0_190828.2338.x86_64 Wed 11 Oct 2020 10:33:59 AM +03 exaCC4vm01: dbaastools_exa-1.0-1+18.2.3.1.0_190828.2338.x86_64 Wed 11 Oct 2020 10:34:32 AM +03 exaCC5vm01: dbaastools_exa-1.0-1+18.2.3.1.0_190828.2338.x86_64 Wed 11 Oct 2020 10:35:05 AM +03 exaCC6vm01: dbaastools_exa-1.0-1+18.2.3.1.0_190828.2338.x86_64 Wed 11 Oct 2020 10:35:30 AM +03 exaCC7vm01: dbaastools_exa-1.0-1+18.2.3.1.0_190828.2338.x86_64 Wed 11 Oct 2020 10:35:54 AM +03 exaCC8vm01: dbaastools_exa-1.0-1+18.2.3.1.0_190828.2338.x86_64 Wed 11 Oct 2020 10:36:18 AM +03
6. Again try to run the precheck
[root@exaCC101vm01 ~]# /var/opt/oracle/exapatch/exadbcpatchmulti -precheck_async upgrade_18.0.0.0-GI -dbname=grid INFO: dbname given is grid Use of uninitialized value $dg_inst in string eq at /var/opt/oracle/exapatch/exadbcpatchmulti line 355. INFO: Master transaction id is : 13 13 INFO: sshkey being used is /home/opc/.ssh/id_rsa for exaCC101vm01 INFO: cmd being run is: sudo /var/opt/oracle/exapatch/exadbcpatchsm -precheck_async upgrade_18.0.0.0-GI -dbname=grid -firstnode -lastnode -patch_homes=/u01/app/12.2.0.1/grid -txn_fl=/home/opc/txnid_fl.117282 INFO: running on the node exaCC101vm01 INFO: host and txn id given : exaCC101vm01 and 14 INFO: status seen is: Running: precheck in progress INFO: status of slave txn###: Running: precheck in progress on exaCC101vm01 INFO: host and txn id given : exaCC101vm01 and 14 INFO: status seen is: Running: precheck in progress INFO: host and txn id given : exaCC201vm02 and 30 INFO: status seen is: Running: precheck in progress INFO: status of slave txn###: Running: precheck in progress on exacc201vm02 INFO: -upgrade_async completed on exaCC201vm02:/u01/app/12.2.0.1/grid INFO: -upgrade_async completed on all nodes
7. Run the Grid home upgrade using the below
[root@exaCC101vm01 ~]# /usr/bin/perl /var/opt/oracle/exapatch/exadbcpatch -upgrade_async -psunum=upgrade_18.0.0.0-GI -patch_homes=/u01/app/12.2.0.1/grid -dbnames=grid -firstnode -lastnode
610 total views, 1 views today