Cut the Clutter: SOA Upgrade from 12.2.1.x to 220.127.116.11
Updated: Jan 4
Introduction: Oracle SOA Suite 18.104.22.168 was released on Sep 27, 2019, and is the latest SOA release in the market. The complete upgrade process is listed in Oracle SOA Upgrade Documentation, however, it is too exhaustive and a bit hard to follow. https://docs.oracle.com/en/middleware/fusion-middleware/22.214.171.124/fupss/preface.html#GUID-97108791-B395-4339-824C-2E8404C54DAD
Hence, to simplify the upgrade exercise, I have divided it into several activities that are explained in detail below. And have also listed several issues that you might encounter during the upgrade and their corresponding action plans.
Here is the list of activities we need to complete for the upgrade task.
1. Obtain the 126.96.36.199 Installer
2. Capture the Current Versions
3. Capture key configurations
4. Domain Shutdown and Backup
5. Infrastructure 188.8.131.52 Install
6. SOA 184.108.40.206 Install
7. Upgrade Readiness Check
8. Schema Upgrade
9. Domain Reconfiguration
10. Component Upgrade
11. Reconfigure Plan XMLs
12. Re-import SSL Certificates
13. Necessary Patching/Other fixes
14. Domain Startup
15. Capture the New Versions
Now let's start the upgrade activity and follow the above sections in given order:
Obtain the 220.127.116.11 Installer
For SOA Upgrade you would need 2 installers and a bundle patch
V983368-01.zip - Infrastructure 18.104.22.168 Installer
V983383-01.zip - SOA 22.214.171.124 Installer
Patch 31396632 - 126.96.36.199 Bundle Patch 200524 (188.8.131.52.200524)
Capture the current versions
Capture Key Configurations
Oracle Homes: These values will be referred in various GUI screens to follow during the upgrade process.
SOA HOME: /oracle/wls/12c/soa
WLS HOME: /oracle/wls/12c/wlserver
JAVA HOME: /usr/java8_64/jre/
DOMAIN HOME: /oracle/wls/12c/user_projects/domains/soa
FMW HOME: /oracle/wls/12c
Domain Shutdown and Backup
Shutdown the SOA domain and take the following backups:
Orainventory file: mv oraInventory oraInventory_backup12212
Product/Binaries: mv 12c 12c_backup12212_new
Domain: I had the domain in 12c folder only so no separate backup required. However it is good practice to have Binary and Domain in separate folder structures. I have created a new 12c folder that will hold the new binaries and also copied over the domain from the backed up folders.
tar -cvz user.tar user_projects/
mv user.tar ../12c/
tar -xvf user.tar
SOA Database: You can use RMAN or FLASHBACK to take the SOA Database Backup
Infrastructure 184.108.40.206 Install
Now all backups are done and domain is shutdown. We are good to proceed with the installation activities.
Important Note: Do not install weblogic from fmw_220.127.116.11.0_wls.jar as it will result in error while installing SOA on top of it. WLS jar does not have required components to support SOA. You need to install weblogic and other components from fmw_18.104.22.168.0_infrastructure.jar (Doc ID 1904280.1)
Unzip the Installer:
Execute the Installer:
Screenshots: I have added the key screenshots below.
SOA 22.214.171.124 Install
After Infrastructure Installation we need to install SOA 126.96.36.199. We will install it in the new FMW home that we created during backup stage.
Unzip the installer:
Execute the installer:
Screenshots: In 3rd screenshot, BPM will include SOA and BPM both for upgrade
Upgrade Readiness Check
This step is executed to make sure that all components are in proper to be upgraded. In case some schemas having custom objects and locked objects, you will see warning/errors in this step.
Execute Readiness Check:
Now the readiness check is successfully done and we are good to execute the Database schema upgrade. Here you will notice that not all schemas are getting upgraded to 188.8.131.52, some of those will remain in their existing version as there are no changes introduced in those for this upgrade.
Schema Upgrade Execution:
*Below warning can be ignored
Execute Domain Reconfiguration:
Any Schema connection error should be resolved before proceeding further. We had faced issues with account locked and incorrect port details in the environment that were resolved during the upgrade.
In this section, we are required to upgrade the WebLogic domain components such as JRF, WSM etc.
Execute Component Upgrade:
Reconfigure Plan XMLs
If the plan XMLs are located inside the product home directories, we need to move them to new oracle home directories that are created in new Product home.
Copy the following to new Product home:
/oracle/wls/12c_backup12214/ soa/soa/Plan.xml /oracle/wls/12c_backup12214/ soa/soa/Plan1.xml /oracle/wls/12c_backup12214/ soa/soa/Plan_AQ.xml /oracle/wls/12c_backup12214/ soa/soa/applications/Plan.xml /oracle/wls/12c_backup12214/ soa/soa/connectors/Plan.xml
/oracle/wls/12c/soa/soa/Plan.xml /oracle/wls/12c/soa/soa/Plan1.xml /oracle/wls/12c/soa/soa/Plan_AQ.xml /oracle/wls/12c/soa/soa/applications/Plan.xml /oracle/wls/12c/soa/soa/connectors/Plan.xml
For Clusters: Keep Plan XMLs in a shared location
For Standalone: Keep Plan XMLs outside the Product home
Re-import SSL certificates
As the Demotrust keystore resides in weblogic home, we need to move the old keystore to new oracle home.
mv $WLS_HOME/server/lib/DemoTrust.jks $WLS_HOME/server/lib/DemoTrust.jks_bkup
cp $OLD_WLS_HOME/server/lib/DemoTrust.jks $WLS_HOME/server/lib/
Necessary Patching and other fixes
ORABPEL-15235 - Failed To Translate JSON To XML. Cannot Normalize!
Patch 31396632: 184.108.40.206 Bundle Patch 200524 (220.127.116.11.200524) in your 18.104.22.168
Please Note: This patch is mandatory after the upgrade as many features were not working after the upgrade and some of the components were still showing the previous version despite the successful upgrade.
Deployment failed with ANT not found error
Copied over ANT related modules from old binary backup
tar cvf ant.jar org.apache.ant_1.9.2/
mv ant.jar /oracle/wls/12c/oracle_common/modules
tar xvf ant.jar
tar cvf sf.jar net.sf.antcontrib_22.214.171.124_1-0b3/
mv sf.jar /oracle/wls/12c/oracle_common/modules/
tar xvf sf.jar
Custom XA Data Sources were reverted to Non XA Driver after the upgrade
Verify the drivers for XA Datasources post upgrade. If its non-XA driver (oracle.jdbc.OracleDriver), update to XA driver (oracle.jdbc.xa.client.OracleXADataSource) from Admin console.
Restart Domain and verify the versions
However it is a minor version upgrade but from 12c onwards we need to do a complete installation and re-configuration of existing domain to upgrade SOA. A thorough testing of all critical composites, Data Sources (especially using XA drivers), SSL outbound calls and JSON based REST services is advised.