This chapter lists the steps for upgrading Oracle Pedigree and Serialization Manager (OPSM) from 1.2.0.19.0 to 2.1.0.1.0.
If you are upgrading from 1.2.0.19.0, you must also apply the 2.1.0.1.0 patch after upgrading to 2.1.0.0.0. You cannot stay on 2.1.0.0.0. Failure to do so will result in loss of functionality.
This chapter covers the following topics:
Shutdown the admin server and the managed servers (for example, soa_server1 and pas_server1).
Upgrade to Oracle Database 12c Release 1 (12.1.0.1.0) 64-bit Production Database, Enterprise Edition, if needed.
Upgrading the database is NOT required for Oracle Pedigree and Serialization Manager Release 2.1.0.0.0.
Important: When installing Oracle Database 12c Release 1, choose Advanced Install, then in the following screens, deselect the Create as Container database option and select the AL32UTF8 character set.
Download and apply the latest patches from Release 1.2 from support.oracle.com:
Patch | Part Number/Patch Number | Notes |
---|---|---|
OPSM 1.2.0.0.0 | 17426567 | Available on My Oracle Support (https://support.oracle.com/) |
OPSM 1.2.0.1.0 | 18305980 | Available on My Oracle Support (https://support.oracle.com/) |
OPSM 1.2.0.2.0 | 18390644 | Available on My Oracle Support (https://support.oracle.com/) |
OPSM 1.2.0.3.0 | 18449428 | Available on My Oracle Support (https://support.oracle.com/) |
OPSM 1.2.0.3.1 | 18520466 | Available on My Oracle Support (https://support.oracle.com/) |
OPSM 1.2.0.4.0 | 18613786 | Available on My Oracle Support (https://support.oracle.com/) |
OPSM 1.2.0.5.1 | 20094334 | Available on My Oracle Support (https://support.oracle.com/) |
OPSM 1.2.0.6.0 | 20296116 | Available on My Oracle Support (https://support.oracle.com/) |
OPSM 1.2.0.7.0 | 21244455 | Available on My Oracle Support (https://support.oracle.com/) |
OPSM 1.2.0.10.0 | 21692956 | Available on My Oracle Support (https://support.oracle.com/) |
OPSM 1.2.0.11.0 | 21785676 | Available on My Oracle Support (https://support.oracle.com/) |
OPSM 1.2.0.11.1 | 22201666 | Available on My Oracle Support (https://support.oracle.com/) |
OPSM 1.2.0.12.0 | 21785819 | Available on My Oracle Support (https://support.oracle.com/) |
OPSM 1.2.0.13.0 | 21785689 | Available on My Oracle Support (https://support.oracle.com/) |
OPSM 1.2.0.14.0 | 22607589 | Available on My Oracle Support (https://support.oracle.com/) |
OPSM 1.2.0.14.1 | 22698644 | Available on My Oracle Support (https://support.oracle.com/) |
OPSM 1.2.0.14.2 | 22712716 | Available on My Oracle Support (https://support.oracle.com/) |
OPSM 1.2.0.15.0 | 23022989 | Available on My Oracle Support (https://support.oracle.com/) |
OPSM 1.2.0.16.0 | 23344184 | Available on My Oracle Support (https://support.oracle.com/) |
OPSM 1.2.0.17.0 | 20449989 | Available on My Oracle Support (https://support.oracle.com/) |
OPSM 1.2.0.18.0 | 24687534 | Available on My Oracle Support (https://support.oracle.com/) |
OPSM 1.2.0.19.0 | 25190074 | Available on My Oracle Support (https://support.oracle.com/) |
Set the following environment variables:
MW_HOME to your Middleware Home
For example,
Unix-based systems:
MW_HOME=/slot/ems2383/oracle/mwhome
Windows-based systems:
MW_HOME = D:\scratch\opsm_install\Oracle\Middleware
MW_ORA_HOME to your SOA HOME
For example,
Unix-based systems:
MW_ORA_HOME=$MW_HOME/Oracle_SOA1
Windows-based systems:
MW_ORA_HOME=%MW_HOME%\Oracle_SOA1
ORACLE_DB_HOME variable to include ORACLE_HOME
For example,
Unix-based systems:
ORACLE_DB_HOME = /scratch/opsm_install/app/oracle/product/11.2.0/dbhome_1
Windows-based systems:
ORACLE_DB_HOME =D:\scratch\opsm_install\app\oracle\product\11.2.0\dbhome_1
PATH variable to include ORACLE_HOME\bin
For example,
Unix-based systems:
PATH=$ORACLE_DB_HOME/bin:$PATH
Windows-based systems:
PATH=%ORACLE_HOME%\bin;%PATH%
ORACLE_HOME
For example,
Unix-based systems:
ORACLE_HOME= /scratch/opsm_install/app/oracle/product/11.2.0/dbhome_1
Windows-based systems:
ORACLE_HOME= D:\scratch\opsm_install\app\oracle\product\11.2.0\dbhome_1
JAVA_HOME variable to your Java installed directory
For example,
Unix-based systems:
JAVA_HOME = /scratch/opsm_install/Java/jdk1.6.0_06
Windows-based systems:
JAVA_HOME = D:\Java\jdk1.6.0_06
ORACLE_SID
For example,
Unix-based systems:
ORACLE_SID = slc12ltk
Windows-based systems:
ORACLE_SID = slc12ltk
Note: You can verify an environment variable setting by using the echo command. For example,
Unix-based systems:
echo $ORACLE_DB_HOME
Windows-based systems:
echo %ORACLE_DB_HOME%
Copy the pas.zip file to the location that you have set in your MW_ORA_HOME environment variable.
Merge the applications, db, soa, and scripts directories from the extracted pas.zip within the existing pas folder. The atglite and odi directories must remain since the deployed libraries refer to the jars inside that directory. There are no changes to the files in adapters, atglite, odi, soa, and templates directories.
Unzip the pas.zip file using the following command:
unzip -o pas.zip
Take a backup of the OPSM data. In particular, take a backup of any custom code in the package specification and body of the PAS_SERIAL_GEN and PAS_SERIAL_VAL database packages.
Move the jar utility from your JDK home folder into the search path. This is needed because the install script uses the jar utility to extract the files and modify the connection parameters.
If you are using a 12c Database please execute this command using the sys user before the upgrade:
GRANT INHERIT PRIVILEGES ON USER SYS TO XDBPM;
Navigate to $MW_HOME/user_projects/domains/base_domain/bin, and startup the WebLogic server and the managed servers.
On Unix-based systems use the following commands:
./startWebLogic.sh
./startManagedWebLogic.sh soa_server1
./startManagedWebLogic.sh pas_server1
On Windows-based systems use the following commands:
startWebLogic.cmd
startManagedWebLogic.cmd soa_server1
startManagedWebLogic.cmd pas_server1
Backup the user_projects directory under the middleware home. This is needed because the upgrade script modifies the domain and if the upgrade fails for any reason, you will need this backup to restore the original domain.
Populate the values in properties file to ensure that a description of every property is available before the property is referred to. The appropriate parameters are described in the comments of the properties file. The properties file is located in the MW_ORA_HOME/pas/scripts directory.
For Unix-based systems, use the pas_install.properties file.
For Windows-based systems, use the pas_install_win.properties.file.
Make sure that the admin server and the managed servers (for example, soa_server1 and pas_server1) are not running.
Navigate to the PAS script directory.
For example, cd MW_ORA_HOME/pas/scripts
Execute the upgrade script to upgrade Oracle Pedigree and Serialization Manager.
For Unix-based systems, use the "pasMasterUpgrade12To21.py" script. Run the installation script using the following command:
$MW_ORA_HOME/common/bin/wlst.sh ./pasMasterUpgrade12To21.py
For Windows-based systems, use the "pasMasterUpgrade12To21Win.py" script. Run the installation script using the following command:
%MW_ORA_HOME%\common\bin\wlst.cmd pasMasterUpgrade12To21Win.py
Ensure that the terminal on which you are running the upgrade has sufficient scroll-back lines (for example, 5000) to capture all the output from the install activities. This enables you to review all of the upgrade activities later.
Important: The upgrade python script will run database upgrade scripts. Please observe the console output and check if there are errors while running of database scripts and continue with the upgradation.
During the upgrade, you are prompted to answer this question after each SQL script is executed: Are there any errors in script? y/n. If you answer no, the upgrade script continues and assumes there are no errors in the script execution so far. If you answer yes, the upgrade script quits and assumes there are errors in the script execution.
In the case of script execution failure, after you have corrected the errors, comment the sql script files in the upgrade script which have already run successfully before re-running the upgrade script.
Note: If you see errors similar to below while removing soa temporary files, these errors can be ignored and you may continue with the upgrade:
rm: cannot unlink entry "C:/Oracle/MIDDLE~1/user_projects/domains/base_domain/servers/soa_server1/tmp/_WL_user/soa-infra/y2559h/war/WEB-INF/default/PasTransmitSerialsViaFileComposite!1.0_soa_7c78c21f-f0d9-453b-91d3-04fdaaa5dcd3/transmitserialsviafile_client_ep/TransmitSerialsViaFile.wsdl": The system cannot find the path specified.
The upgrade script attempts to start the Admin Server. It tests in a loop if the server is up before it continues. If you installed your WebLogic Server in Production Mode, the Admin server requires a userid and password to start which the script does not set for security reasons. In this case, you must start a new terminal window to start the Admin Server. After the script detects the server has started, it will continue.
After the Admin Server has been started, the upgrade script will prompt you to start up the managed servers (for example, soa_server1 and pas_server1). To do so, make sure the environment variables are set as described in the Pre-Upgrade Tasks section, then navigate to MW_HOME/user_projects/domains/base_domain/bin. Using separate terminal windows, startup the PAS and SOA managed servers. Keeping in mind your actual managed server names may be different, use the following commands as examples:
For Unix-based systems:
sh startManagedWebLogic.sh soa_server1
sh startManagedWebLogic.sh pas_server1
For Windows-based systems:
startManagedWebLogic.cmd soa_server1
startManagedWebLogic.cmd pas_server1
After the managed servers are started, press enter in the first terminal where the "pasMasterUpgrade12To21.py" script or "pasMasterUpgrade12To21Win.py" script is run to continue processing the install script.
The OPSM installation output is captured in the scroll buffer of the terminal on which you run the installation. Scroll through the buffer to check for errors. The following warnings, if seen, can be ignored:
WARNING: Failed to create ConnectionDBean for {http://xmlns.oracle.com/oracle/apps/fnd/applcore/flex/deployment/service/model/}FlexDeploymentService
WARNING: Failed to create ConnectionDBean for AtkHelpPortalService
After the upgrade script has completed successfully, you must restart the Admin Server and managed servers (for example, soa_server1 and pas_server1) for changes made by the upgrade script to take effect.
Download the OPSM 2.1.0.1.0 patch (25908128) available on My Oracle Support (https://support.oracle.com/) and apply the patch.
If you are upgrading from 1.2.0.19.0, you must also apply the 2.1.0.1.0 patch after upgrading to 2.1.0.0.0. You cannot stay on 2.1.0.0.0. Failure to do so will result in loss of functionality.
The data in the PAS_S_LOCATION_CONTACTS table and PAS_EPC_USERS table needs to be cleaned up by populating missing information and correcting inconsistent information.
The PAS_S_LOCATION_CONTACTS table must not have any rows with a null contact_user_id. Run the following SQL statement to identify rows with a null contact_user_id and populate the contact_user_id where ever it is null. Since this is also used for digital signatures, if that is enabled, you may want to give the WebLogic username that the contact has or will have in the future.
select * from PAS_S_LOCATION_CONTACTS where contact_user_id is null
Important: This sql statement must be run while connected to the database as the PAS user.
If there are rows with duplicate contact_user_id values in the PAS_S_LOCATION_CONTACTS table, all the other user related information must be identical for these rows. The script "checkLocationContactUserInfoConsistent.sql" displays which records are inconsistent. This script is located in the pas/db directory. Update the rows so that they are consistent.
Important: This script must be run while connected to the database as the PAS user.
If the same username is present in both the PAS_EPC_USERS and PAS_S_LOCATION_CONTACTS tables, the user data in the two tables must be consistent. Run "checkLocationContactUserInfoConsistentWithEpcUsers.sql" to identify the inconsistent rows. Update the rows so that they are consistent.
Important: This script must be run while connected to the database as the PAS user.
The "central_user_data_migration.sql" script performs the same verification as in the previous three steps (Step 1 through Step 3). If it fails, the script will exit with an error message and will not perform the migration. If it passes, it will migrate data from the PAS_S_LOCATION_CONTACTS and PAS_EPC_USERS tables into the PAS_S_USERS table. It updates the USER_ID column in PAS_S_LOCATION_CONTACTS table with the value in the USER_ID column in the PAS_S_USERS table. It populates the PAS_EPC_USER_POLICY_ASSOC table based on the data in the PAS_EPC_USERS table.
Important: This script must be run while connected to the database as the PAS user.
Migrate the locations to the packs table by running the "upgradeInstall_step3_fepasSchema_migrateLocationToPacksTable.sql" SQL script provided from within the MW_ORA_HOME/pas/db folder.
Important: This script must be run while connected to the database as the PAS user.
Refer to the Post Installation Tasks section to verify that the servers are running.
Refer to the Oracle Pedigree and Serialization Manager Security Guide for the new jobs, duties, application roles, and privileges introduced in 2.1.0.0.0.
If you decide to use Oracle BI Publisher 11g, follow the instructions in the Installing Oracle Pedigree and Serialization Manager 2.0.0.0.0 chapter, Post Installation Tasks section, Load Existing OPSM Templates Into Oracle BI Publisher 11g.
Restore the backup of the custom code in the PAS_SERIAL_GEN and PAS_SERIAL_VAL packages.
In the event that an upgrade fails, follow the procedure below to perform a new upgrade. Keep in mind that your actual managed server names may differ from those used in the sample commands listed below.
Make sure that the environment variables are set as described in Pre-Upgrade Tasks, and that you are in the DOMAIN_HOME (typically MW_HOME/user_projects/domains/base_domain).
Stop the SOA Server.
Go to DOMAIN_HOME/bin and issue the following command at the prompt:
For Unix-based systems:
sh stopManagedWebLogic.sh soa_server1 t3://<servername>:<adminport>
For example:
sh stopManagedWebLogic.sh soa_server1 t3://host.oracle.com:7001
For Windows-based systems:
stopManagedWebLogic.cmd soa_server1 t3://<servername>:<adminport>
For example:
stopManagedWebLogic.cmd soa_server1 t3://host.oracle.com:7001
Stop the PAS Server.
Go to DOMAIN_HOME/bin and issue the following command at the prompt:
For Unix-based systems:
sh stopManagedWebLogic.sh pas_server1 t3://<servername>:<adminport>
For example:
sh stopManagedWebLogic.sh pas_server1 t3://host.oracle.com:7001
For Windows-based systems:
stopManagedWebLogic.cmd pas_server1 t3://<servername>:<adminport>
For example:
stopManagedWebLogic.cmd pas_server1 t3://host.oracle.com:7001
Stop the Admin Server.
Go to DOMAIN_HOME/bin and issue the following command at the prompt:
For Unix-based systems:
sh stopWebLogic.sh
For Windows-based systems:
stopWebLogic.cmd
Perform cleanup tasks:
Clean up the MW_HOME/user_projects directory and restore from the backup taken before the initial installation.
Delete the pas directory under MW_ORA_HOME.
Use dbUpgrade = no in the properties file to prevent repeated upgrade of the database if the database upgrade scripts were already successfully executed.
Perform step 4 from Pre-Upgrade Tasks.
Perform step 6 from Pre-Upgrade Tasks.
Perform a new upgrade.
Follow the steps for a new upgrade starting with step 1 under the section Upgrade Tasks.