An Autoupgrade perfectly handles the database dictionary, but E-Business Suite 12.2 demands specific post-creation tasks on both the database and application tiers to integrate correctly. Especially in a RAC situation such is common when using Exascale Infrastructure.
Once the database was upgraded to 26ai we used the EDBPC (Using the Oracle E-Business Suite Database Parameter Checker (EDBPC) (MOS Note KA1180) tool to check for "wrong" parameters. Those where present especially on the vanilla CDB database:
ALTER SYSTEM SET "_system_trig_enabled" = TRUE scope = BOTH sid='*';
ALTER SYSTEM SET "nls_sort" = 'binary' scope = SPFILE sid='*';
ALTER SYSTEM SET "nls_date_format" = 'DD-MON-RR' scope = SPFILE sid='*';
ALTER SYSTEM SET "event" = "10946 trace name context forever, level 8388608" scope = SPFILE sid='*';
ALTER SYSTEM SET "permit_92_wrap_format" = TRUE scope = SPFILE sid='*';
ALTER SYSTEM SET "recyclebin" = 'off' scope = SPFILE sid='*';
Alter system set sga_target=40g scope = SPFILE sid='*';
Alter system set sga_max_size=40g scope = SPFILE sid='*';
Alter system set pga_aggregate_target=10g scope = SPFILE sid='*';
Alter system set shared_pool_size=600m scope = SPFILE sid='*';
Alter system set global_names=false scope = SPFILE sid='*';
Alter session set container=UPG;
CREATE UNDO TABLESPACE APPS_UNDOTS2 DATAFILE '@wHw8P6k0' SIZE 30G;
alter tablespace APPS_UNDOTS2 add datafile size 30g;
ALTER SYSTEM SET "container_data" = CURRENT_DICTIONARY scope = SPFILE sid='*';
ALTER SYSTEM SET "_ub4_audit_sessionid" = TRUE scope = SPFILE sid='*';
alter system set undo_tablespace='APPS_UNDOTS1' scope=BOTH sid='CDBUPG1';
alter system set undo_tablespace='APPS_UNDOTS2' scope=BOTH sid='CDBUPG2';With those parameters in place, most objects where valid after another utlrp run; the biggest exception where around DBMS_OBFUSCATION as I've already shown in a recent webinar on 26ai for E-Business Suite.
Finally we utilized the txkPostPDBCreationTasks.pl script to validate and configure our Pluggable Database for EBS:
perl $ORACLE_HOME/appsutil/bin/txkPostPDBCreationTasks.pl \
-dboraclehome=$ORACLE_HOME -dbuniquename=CDBUPG \
-outdir=$ORACLE_HOME/appsutil/log \
-cdbname=CDBUPG -cdbsid=CDBUPG1 -pdbsid=UPG \
-appsuser=apps -dbport=1521 \
-israc=yes \
-virtualhostname=exaupg31-klkfm.regionaldb.lbnetworkvcn.oraclevcn.com \
-scanhostname=exaupg3-scan-eptcd.regionaldb.lbnetworkvcn.oraclevcn.com -scanport=1521 \
-servicetype=exadatadbsystem \
-generatepasswordfile=noThe script often throws an error regarding the utl_file_dir parameter. This is expected, and we repair it by invoking the txkCfgUtlfileDir.pl script in both getUtlFileDir, setUtlFileDir and createDirObject modes. We then ran adautocfg.sh on all the the database tier to cement the configurations.