Showing posts with label EBS. Show all posts
Showing posts with label EBS. Show all posts

Tuesday, February 6, 2024

FAQ: Oracle E-Business Suite and the Oracle Multitenant Architecture (Doc ID 2567105.1)

 Introduced with Oracle Database 12c, the multitenant architecture enables an Oracle database to function as a container database (CDB). A pluggable database (PDB) is a portable collection of schemas, schema objects, and non-schema objects, contained within a CDB.

This document presents a series of commonly asked questions and answers about using Oracle E-Business Suite (EBS) with the multitenant architecture: for example, how many PDBs are currently supported within a CDB.

The topics are grouped in the order they are most likely to be needed by those new to this area, but can be referred to in any desired order or combination.

There is a change log at the end of this document.

Section 1: General Questions

How does Oracle E-Business Suite support the multitenant architecture?

Oracle E-Business Suite supports the multitenant architecture with a single CDB containing a single pluggable Oracle E-Business Suite database (PDB) in the following combinations:

  • Oracle E-Business Suite 12.2.3 and later with Oracle Database 19c on-premises
  • Oracle E-Business Suite 12.2.3 and later with Oracle Database 12cR1 VM DB Systems or Oracle Database 12cR1 in an Exadata DB System
  • Oracle E-Business Suite 12.1.3 with Oracle Database 19c on-premises
  • Oracle E-Business Suite 12.1.3 with Oracle Database 12cR1 VM DB Systems or Oracle Database 12cR1 in an Exadata DB System

How many PDBs are supported in a CDB that is running Oracle E-Business Suite?

At present, Oracle E-Business Suite supports a single PDB (single tenant) in a CDB.

Are there additional licensing requirements?

Oracle E-Business Suite currently supports a single pluggable database (single tenant) with a CDB architecture (see previous question). A single PDB in a CDB does not require licensing the Oracle Multitenant database option.

For more information, refer to the following resources:

Do I need to make any Oracle E-Business Suite Infrastructure changes?

Whether you need to make changes to your Oracle E-Business Suite environment depends on where your environment resides:

  • For on-premises Oracle E-Business Suite environments:
    • As part of the upgrade of your Oracle E-Business Suite Database to 19c you will convert your database to the CDB architecture with a single pluggable database (PDB). For more information, refer to the following My Oracle Support knowledge documents:
      • Document 2552181.1Interoperability Notes: Oracle E-Business Suite Release 12.2 with Oracle Database 19c
      • Document 2580629.1Interoperability Notes: Oracle E-Business Suite Release 12.1 with Oracle Database 19c
  • For Oracle E-Business Suite environments on Oracle Cloud Infrastructure (OCI):
    • If you are moving to a database service (1-node or 2-node VM DB System, or Exadata DB System) as part of the migration of an Oracle E-Business Suite 12c database, you will need to convert the database to the CDB architecture.
      • For more information, refer to Section 3, Certifications and Automations, of My Oracle Support Knowledge Document 2517025.1Getting Started with Oracle E-Business Suite and Oracle Cloud Infrastructure.

Section 2: Oracle E-Business Suite Container Database (CDB)

Note: Except for cloning, the questions and answers in this section apply both to on-premises and OCI environments.

How do I source the Oracle E-Business Suite CDB environment?

Oracle E-Business Suite database CDB environment files are located in the database ORACLE_HOME. Run the following commands:

cd $ORACLE_HOME
source <CDB_NAME>_<NODE_NAME>.env

How do I connect to the Oracle E-Business Suite CDB as SYSDBA?

Source the CDB environment file in the ORACLE_HOME and then use SQL*Plus to connect to the CDB as SYSDBA:

cd $ORACLE_HOME
source <CDB_NAME>_<NODE_NAME>.env
sqlplus "/ as sysdba"

How do I start the CDB that hosts the Oracle E-Business suite PDB?

You will use either SQL*Plus or srvctl, depending on whether you are using a single-node instance or Oracle RAC system.

  • On a single-node instance, run the following commands:
    source <CDB_NAME>_<NODE_NAME>.env
    sqlplus "/ as sysdba"
    SQL> startup;
  • On an Oracle RAC system, run the following commands:
    source <CDB_NAME>_<NODE_NAME>.env
    srvctl start database -d <CDB name>

How do I shut down the CDB that hosts the Oracle E-Business Suite PDB?

You will use either SQL*Plus or srvctl, depending on whether you are using a single-node instance or Oracle RAC system.

  • On a single-node instance, run the following commands:
    source <CDB_NAME>_<NODE_NAME>.env
    sqlplus "/ as sysdba"
    SQL> shutdown normal;
  • On an Oracle RAC system, run the following commands:
    source <CDB_NAME>_<NODE_NAME>.env
    srvctl stop database -d <CDB name>

How do I clone an Oracle E-Business Suite environment with a CDB?

In on-premises environments, the Oracle E-Business Suite Rapid Clone utility can be used to clone both the CDB and PDB together.

Section 3: Oracle E-Business Suite Pluggable Database (PDB)

How do I source the Oracle E-Business Suite PDB environment?

The Oracle E-Business Suite database PDB environment files are located in the database ORACLE_HOME:

cd $ORACLE_HOME
source <PDB_NAME>_<NODE_NAME>.env

How do I connect to the Oracle E-Business Suite PDB as SYSDBA?

Source the CDB environment file, export the Oracle E-Business Suite PDB name, then use SQL*Plus to connect to the PDB as SYSDBA:

source <CDB_NAME>_<NODE_NAME>.env
export ORACLE_PDB_SID=<PDB NAME>;
sqlplus "/ as sysdba"

How do I open the Oracle E-Business Suite PDB?

Source the CDB environment file, connect to the CDB as SYSDBA, then execute the SQL shown in the example to start the PDB:

source <CDB_NAME>_<NODE_NAME>.env
sqlplus "/ as sysdba"
SQL> alter pluggable database <EBS PDB Name> open read write services=all;

How do I close the Oracle E-Business Suite PDB?

Source the CDB environment, connect to the CDB as SYSDBA, then execute the SQL shown in the example to close the PDB:

source <CDB_NAME>_<NODE_NAME>.env
sqlplus "/ as sysdba"
SQL> alter pluggable database <EBS PDB Name> close immediate;

There is also the option to save the state of the PDB. Oracle will then preserve the mode when you restart the CDB. You can find the current saved state by querying DBA_PDB_SAVED_STATES:

source <CDB_NAME>_<NODE_NAME>.env
sqlplus "/ as sysdba"
SQL> alter pluggable database <EBS PDB Name> save state;
SQL> alter pluggable database <EBS PDB Name> close immediate;

How do I find Oracle E-Business Suite PDB information and status?

The following SQL returns the values for the con_idcon_name, open moderestricted values of all your PDBs.
source <CDB_NAME>_<NODE_NAME>.env
sqlplus "/ as sysdba"
SQL> show pdbs;
Alternatively, you could use the following SQL to return only the values for name and open mode:
source <CDB_NAME>_<NODE_NAME>.env
sqlplus "/ as sysdba"
SQL> select name, open_mode from v$pdbs;

How do I access the Oracle E-Business Suite PDB while logged into the CDB?

Use the following command to set the environment, show the PDB name, and then connect to that PDB:

source <CDB_NAME>_<NODE_NAME>.env
sqlplus "/ as sysdba"
SQL> show pdbs;
SQL> alter session set container=”PDBNAME”;

Where do I look for PDB errors if I encounter a problem?

Source the environment and then review any plugin violations, as shown in the following example:

source <CDB_NAME>_<NODE_NAME>.env
sqlplus "/ as sysdba"
SQL> select name, cause, message, status from PDB_PLUG_IN_VIOLATIONS;

Can I unplug an Oracle E-Business Suite PDB from one CDB and plug it into another CDB?

At present, there is no supported procedure to unplug an Oracle E-Business Suite PDB and plug (relocate or clone) it to another CDB.

What parameters in the Oracle E-Business Suite database context file support the multitenant architecture?

Context variables used to support the multitenant architecture are as follows:

  • s_pluggable_database: This variable is set to TRUE in a multitenant database.
  • s_pdb_name: This variable is set to PDB name.
  • s_cdb_name: This variable is set to CDB SID.
  • s_cdb_unique_name: This variable is set to the DB unique name for the CDB.
  • s_dbService: This variable is set to ebs_<PDB name> in a multitenant database.
  • s_db_tenancy: This variable is set to multi-tenant in a multitenant database.
  • s_cdb_tnsadmin: This variable is set to $ORACLE_HOME/network/admin.

Before running AutoConfig on the database tier, do I source the PDB environment or CDB environment?

You should always source the Oracle E-Business Suite PDB environment before running AutoConfig. You can do so by running the following commands:

cd $ORACLE_HOME
source <PDB_NAME>_<NODE_NAME>.env

Can I export an Oracle 12c non-CDB database and import it into an Oracle 19c PDB?

Data from a non-CDB database can be directly imported into a PDB using the Data Pump export/import commands. Refer to My Oracle Support Knowledge Document 2554156.1Export/Import Process for Oracle E-Business Suite Release 12.2 Database Instances Using Oracle Database 19c.

Section 4: Oracle E-Business Suite Multitenant Database SQL and Scripts

How do I set up the environment to run an Oracle E-Business Suite Script or SQL session?

Source the Oracle Home <CDB_NAME>_<HOSTNAME>.env and set the PDB environment variable ORACLE_PDB_SID=<PDB_NAME> before running Oracle E-Business Suite programs such as adgrants.sql.

source <CDB_NAME>_<NODE_NAME>.env
export ORACLE_PDB_SID=<PDB_NAME>
sqlplus "/ as sysdba"

Section 5: Oracle E-Business Suite Multitenant Database Patching

How do I run the EBS Technology Codelevel Checker (ETCC) against my Oracle E-Business Suite PDB?

The EBS Technology Codelevel Checker (ETCC) utility provides two scripts to help ensure you have the necessary database and application tier patches installed on your Oracle E-Business Suite Release 12.2 instance.

ETCC extracts environment-related information from the context file (using the location defined in $CONTEXT_FILE), so you need to source the Oracle E-Business Suite PDB environment before you run the database checker script. For OCI-based environments, you also need to add the cloud=y parameter.

Download ETCC as Patch 17537119 from My Oracle Support and unzip it into a working directory. Then proceed with whichever of the following steps applies to you:

  • For an on-premises environment, run the commands:
    source <EBS PDB Name>_<NODE_NAME>.env
    ./checkDBpatch.sh
  • For an environment in Oracle Cloud Infrastructure, run the commands:
    source <EBS PDB Name>_<NODE_NAME>.env
    ./checkDBpatch.sh cloud=y

How do I list the OPatch inventory for a multitenant database?

You can list the OPatch inventory of a multitenant database in the same way as for non-CDB. Run the following commands:

source <CDB_NAME>_<NODE_NAME>.env
export PATH=$PATH:$ORACLE_HOME/OPatch
opatch lsinventory -detail

How do I set up the environment to install a database patch in an Oracle E-Business Suite multitenant database?

Source the CDB environment and add the OPatch directory to the path, as shown in the following example:

source <CDB_NAME>_<NODE_NAME>.env
export PATH=$PATH:$ORACLE_HOME/OPatch
Note: Before running datapatch, ensure that the Oracle E-Business Suite PDB is open as datapatch will only apply or roll back SQL fixes for open PDBs. For more information, refer to My Oracle Support Knowledge Document 1585822.1Datapatch: Database 12c Post Patch SQL Automation.

Section 6: Oracle E-Business Suite Performance Recommendations

What methodology should I follow to ensure I am getting the best performance out of Oracle E-Business Suite?

Refer to My Oracle Support Knowledge Document 2528000.1Oracle E-Business Suite Performance Best Practices.

Where can I find real-world practical tips and lessons for tuning my Oracle E-Business Suite environment?

Refer to My Oracle Support Knowledge Document 2125596.1, Achieving Optimal Performance with Oracle E-Business Suite.

Where do I find the recommended performance patches for Oracle E-Business Suite?

Refer to My Oracle Support Knowledge Document 244040.1, Oracle E-Business Suite Recommended Performance Patches.

Where do I find the recommended initialization parameters for Oracle E-Business Suite?

Refer to My Oracle Support Knowledge Document 396009.1, Database Initialization Parameters for Oracle E-Business Suite Release 12This document includes two main sections:

  • A common set of database initialization parameters that are applicable to all releases of the Oracle Database
  • An Oracle Database release-specific section
These two sections combine to provide a complete list of release-specific database initialization parameters.

For Oracle E-Business Suite Release 12.1 on Oracle Database 19c, refer to the following:
  • Document 396009.1 - Section 1: Common Database Initialization Parameters For All Releases
  • Document 396009.1 - Section 4: Release-Specific Database Initialization Parameters for Oracle 19c
For Oracle E-Business Suite Release 12.2 on Oracle Database 19c, also refer to the following:
  • Document 396009.1 - Section 5: Additional Database Initialization Parameters For Oracle E-Business Suite Release 12.2
Note: Each database section has a list of parameters in a removal list. These must be removed because they are obsolete or else the default database value is mandatory and no other value may be set.

Section 7: Oracle E-Business Suite Multitenant Database Diagnostics

How do I find the location of the alert log and trace files for my multitenant database?

Each CDB has an associated alert log, which is used to record log information, warnings and alerts about the Oracle E-Business Suite PDB. It is located in the "Diag Trace" of the container database. Also, all PDBs plugged in a given CDB write trace data to the "Diag Trace" of the container database, which can be found by querying v$diag_info dynamic view as in the following example:

source <CDB_NAME>_<NODE_NAME>.env
sqlplus "/ as sysdba"
SQL> select value from v$diag_info where name = 'Diag Trace';

How do I generate an AWR snapshot report for my pluggable database?

In Oracle Database 12c Release 1, AWR snapshots are only created at the CDB-level (CDB root). This AWR snapshot is for the whole database system in that it contains the statistical information about the CDB as well as all the PDBs in a multitenant environment.

Oracle 19c multitenant supports AWRs at the CDB and PDB level. There are two new views:

  • AWR_ROOT view: This shows the AWR data stored only on a CDB root, which are generally equivalent to the DBA_HIST views.
  • AWR_PDB view: There are a few PDB-level metrics, but the vast majority are instance-wide statistics that are not shown at this level for security reasons. Hence these will not be flushed in AWR, and will always be shown as 0 in the AWR report.
Use the following commands as a basis to create a snapshot and specify AWR_ROOT or AWR_PDB as appropriate:
source <CDB_NAME>_<NODE_NAME>.env
export ORACLE_PDB_SID=<PDB NAME>;
sqlplus "/ as sysdba"
! Run awrrpt.sql file
SQL> @$ORACLE_HOME/rdbms/admin/awrrpt.sql
...
Specify the location of AWR Data
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
AWR_ROOT - Use AWR data from root (default)
AWR_PDB - Use AWR data from PDB
...

adcfgclone.pl Rapid clone Options E-Business suite 11, R12, R12.2

adcfgclone.pl Different Components There are different components with Rapid Clone that are used when cloning an Oracle Applications instance. These are: dbTechStack (RDBMS ORACLE_HOME) database (database only, including control file creation) dbconfig (database only, with no control file creation) dbTier (both dbTechStack and database) atTechStack (Tools and Web ORACLE_HOMEs) appltop (APPL_TOP only) appsTier (both atTechStack and appltop) Troubleshooting Rapid Clone issues with Oracle Applications R12.0 & R12.1 (Doc ID 603104.1)

Friday, August 11, 2023

How To Automatically Set the Current Run or Patch Edition / File System for EBS 12.2

 For 12.2.2:

Change directory to the Base directory and run script EBSapps.env giving "run" or "patch" as argument, eg:

cd /. ./EBSapps.env run

  E-Business Suite Environment Information
  ----------------------------------------
  RUN File System : <EBS base dir>/fs1/EBSapps/appl
  PATCH File System : <EBS base dir>/fs2/EBSapps/appl
  Non-Editioned File System : <EBS base dir>/fs_ne
  DB Host: <hostname.domain name>  Service/SID: <SID>

  Sourcing the RUN File System ...

 If EBSapps.env is run without the file system as argument this will be prompted for, eg:

. ./EBSapps.env

  E-Business Suite Environment Information
  ----------------------------------------
  RUN File System : <EBS base dir>/fs1/EBSapps/appl
  PATCH File System : <EBS base dir>/fs2/EBSapps/appl
  Non-Editioned File System : <EBS base dir>/fs_ne
  DB Host: <hostname.domain name>  Service/SID: <SID>

  E-Business Suite Environment Setting
  ------------------------------------
  - Enter [R/r] for sourcing Run File System Environment file, or
  - Enter [P/p] for sourcing Patch File System Environment file, or
  - Enter anything else to exit

  Would you like to set the E-Business Suite environment [R/P]:R

  Sourcing the RUN File System ...

 

For 12.2.0:

Note 12.2.0 is not certified, so should be upgraded as soon as possible to 12.2.2 using the procedure of Note 1506669.1 : "Oracle E-Business Suite Release 12.2.2 Readme"

Download, setup and run script fsauto as per the header part of the script:

# Script to set the current RUN Edition APPL_TOP environment automatically.
# Available through My Oracle Support Note 1545584.1
# Requirements: Set the XMLfile variable as specified below. This needs
#   to be set only once and not again after a file system cutover in adop.
# Save the script as fsauto<SID>.env in a non-EBS directory, eg.:
#   /.../.../fsautoPROD.env
# Usage: . <directory>/fsauto<SID>.env
#   Eg.: . /.../.../fsautoPROD.env
#     note the space ' ' character between the leading period '.' and first
#       forward-slash '/' characters
#   Alternatively use: source <directory>/fsauto<SID>.env
# If needed make the script runnable using command: chmod u+x fsautoPROD.env
# Carlo den Otter, 02-APR-2013
# Note this script is for educational purposes only, and as such is not supported.
# It was created on Linux and not tested on other platforms.
# Use at own risk.

 

Sample output:

[oracle@host ~]$ . ./fsautoPROD.sh
Running fsauto 1.0 :
&nbsp;Context Name (&lt;SID_host&gt;) : <SID>_<host>
&nbsp;RUN Edition APPL_TOP&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : ..../fs1
&nbsp;PATCH Edition APPL_TOP&nbsp;&nbsp;&nbsp; : ..../fs2
&nbsp;Non-Editioned File System : .../fs_ne/EBSapps/appl
&nbsp;Instance Top Directory&nbsp;&nbsp;&nbsp; : .../fs1/inst/apps/<SID>_<host>
&nbsp;APPL_TOP environment file : ..../fs1/EBSapps/appl/APPS<SID>_<host>.env

Setting RUN Edition APPL_TOP environment for <...>/fs1 ...
Done.

  


How To Automatically Set the Current Run or Patch Edition / File System for EBS 12.2 (Doc ID 1545584.1)

Thursday, November 17, 2022

How to increase java heap size in EBS R12.2

Why we need to increase the Java heap size: Mainly we need to increase the EBS Performance. Default oacore JVM heap size is 512 MB it's supports 50 to 100 users When our R12.2 instance reach more than 200 users we need to be increase the oacore size for better performance. Oracle recommended to configure 2 GB JVM Heap Space for oacore. This can roughly support 150 to 200 users depending on usage. For higher user load additional oacore managed servers need to be created. Oracle recommend to have 1 managed server per 2 CPU. Following steps how increase the oacore size. Step1: Login weblogic console Step 2: Click à lock and edit Step3: Choice the Domain tab and click à serves menu Step4: Click àoacore_server1 Step 5: Click à server start Step 6: Go to Argument tab Then change the xms and xmx values default value is 512m Default values -XX:PermSize=128m -XX:MaxPermSize=384m -Xms512m -Xmx512m - I changed the values in -XX:PermSize=128m -XX:MaxPermSize=384m -Xms1024m -Xmx2048m – What is mean by XX,Xms and Xmx? XX is MaxPermSize Xms is the minimum heap size Xmx is the maximum heap size Step 7: Click save and release the configuration tab.

Wednesday, November 17, 2021

Oracle E-Business Suite Release 12.2 with Database 19c Documentation References:

 

  • Document 2567105.1, FAQ: Oracle E-Business Suite and the Oracle Multitenant Architecture
  • Document 2552181.1, Interoperability Notes: Oracle E-Business Suite Release 12.2 with Oracle Database 19c
  • Document 2530665.1, Using Oracle 19c RAC Multitenant (Single PDB) with Oracle E-Business Suite Release 12.2
  • Document 2665458.1, Oracle E-Business Suite Release 12.2: Upgrading to Oracle Database 19c with Existing Physical Standby
  • Document 2608028.1, Oracle E-Business Suite Release 12.2: Adding or Deleting 19c Oracle RAC Nodes
  • Document 2615883.1, Using Oracle E-Business Suite Release 12.2 with a Database Tier Only Platform on Oracle 19c
  • Document 396009.1, Database Initialization Parameters for Oracle E-Business Suite Release 12
  • Document 2525754.1, Using UTL_FILE_DIR or Database Directories for PL/SQL File I/O in Oracle E-Business Suite Releases 12.1 and 12.2
  • Document 1594274.1, Oracle E-Business Suite Release 12.2: Consolidated List of Patches and Technology Bug Fixes
  • Document 1392527.1, Database Patches Required by Oracle E-Business Suite on Oracle Engineered Systems: Exadata Database Machines and SuperClusters
  • Document 2683670.1, Previous Oracle Database 19c Release Update Database Patch Lists for Oracle E-Business Suite
  • Document 2559570.1, Using Fast Online Conversion to Enable Transparent Data Encryption (TDE) for Oracle E-Business Suite
  • Document 2554156.1, Export/Import Process for Oracle E-Business Suite Release 12.2 Database Instances Using Oracle Database 19c
  • Document 2674405.1, Using Transportable Tablespaces to Migrate Oracle E-Business Suite Release 12.2 using Oracle Database 19c Enterprise Edition on a Multitenant Environment
  • Document 2617787.1, Business Continuity for Oracle E-Business Suite Release 12.2 on Oracle Database 19c Using Physical Host Name
  • Document 2617788.1, Business Continuity for Oracle E-Business Suite Release 12.2 on Oracle Database 19c Using Logical Host Names
  • Document 2608030.1, Using Active Data Guard Reporting with Oracle E-Business Suite Release 12.2 and Database 19c
  • Document 2692032.1Deploying Oracle GoldenGate 19c to Achieve Operational Reporting for Oracle E-Business Suite Release 12 with Oracle Database 19c
  • Document 2617770.1, Integrating Oracle E-Business Suite Release 12.2 with Oracle Database Vault 19c
  • Document 2552208.1, Cloning Oracle E-Business Suite Release 12.2 with Multitenant Database using Rapid Clone
  • Document 2670270.1Using Oracle E-Business Suite Release 12.2 Data Masking Template with Oracle Database 19c with Oracle Enterprise Manager Cloud Control 13c
  • Document 2676355.1, Getting Started with Oracle Application Management Pack (AMP) for Oracle E-Business Suite, Release 13.4.1.0.0
  • Document 2045552.1Getting Started with Oracle Application Management Pack (AMP) for Oracle E-Business Suite, Release 13.1.1.1.0

Troubleshooting:

  • Document 2684666.1, 12.2 E-Business Technology Stack Autoconfig Performance Issue After Upgrade to 19c Database
  • Document 2685022.1, R12 E-Business Suite Technology Stack Post 19c Upgrade, Running Autoconfig Script txkCfgUtlfileDir.pl Fails With Fatal Error In FUNCTION: main::getUtlFileDirParam ERRORMSG: Unable to read UTL_FILE_DIR parameter
  • Document 2662860.1, 19c Database with Oracle E-Business Suite R12 Known Issues & Solutions

EBS Analyzers:

  • E-Business Suite 19c Database Upgrade Analyzer (Doc ID 2704990.1)
  • EBS Installation Configuration Management (ICM) Application DBA Online Patching (ADOP) Analyzer (Doc ID 2379656.1)
  • E-Business Suite Upgrade Analyzer - 12.X to 12.2.X (Doc ID 2634237.1)

Additional Documentation:

NOTE:2662860.1 - 19c Database with Oracle E-Business Suite R12 Known Issues & Solutions
Information Center: Oracle Database 19c with Oracle E-Business Suite 12.2 and 12.1 (Doc ID 2655839.2)

Friday, June 11, 2021

12.2 adsplice Ignores Custom Tablespaces For New Custom Application Configuration and Only Uses OATM Tablespaces (Doc ID 1987906.1)

 

APPLIES TO:

Oracle Applications Manager - Version 12.2 and later
Information in this document applies to any platform.

SYMPTOMS

On Oracle Applications 12.2.4:

Actual Behavior:
adsplice is not using custom Application configuration as per supplied parameters in newprods.txt.
adsplice ignores the tablespaces specified in the configuration file - newsprod.txt (XXEBS_DATA and XXEBS_IDX) for default data and default index.
Not only were quotas not granted, the product installations table suggests that custom objects will be placed in other E-Business Suite (EBS) table spaces

APPLICATION_ID ORACLE_ID    TABLESPACE             INDEX_TABLESPACE
50001               50001           APPS_TS_TX_DATA    APPS_TS_TX_IDX

The custom user (schema) was created with a default custom tablespaces so we would have expected adsplice to create the objects in the XXEBS_DATA tablespace.

Expected Behavior
Expect AD Splice to work as in Release 12.1 and lower and create the custom objects in the custom tablespace as per the newprods.txt that was edited with the custom configuration.

The issue can be reproduced at will with the following steps:
1. Trying to Implement a custom Application using the following Notes:
  Creating a Custom Application in Oracle E-Business Suite Release 12.2 (Doc ID 1577707.1)
  Create And Register CUSTOM Schema On EBS 12.2 (Doc ID 1929668.1)
2. Updated newprods.txt with following values:
product=xxebs
base_product_top= *APPL_TOP*
oracle_schema=xxebs
sizing_factor=100
main_tspace= XXEBS_DATA
index_tspace=XXEBS_IDX
temp_tspace=TEMP
default_tspace= XXEBS_DATA
3. Ran adsplice.

The issue has the following business impact:
Due to this issue, the custom Application is not successfully implemented.

CHANGES

 Custom applications were not created using the standard OATM model

CAUSE

This is the expected behavior of adsplice on 12.2.  Any new application, be it offered by Oracle as a seeded application or any new custom one, will abide by the mandatory OATM model.
 
12.2 uses the OATM model for basis of Online Patching. New applications objects must be created in the standard OATM tablespaces so Online Patching can take them into consideration.
Only legacy applications which had been previously created in custom tablespaces will remain in the custom tablespaces. Online Patching is able to handle these as the customer went through the R12.2.0 upgrade with the custom tablespaces and objects registered in the database. The Online Patching readiness reports reported any custom objects which would not have adhered to Online Patching requirements and these custom objects had to be fixed before enabling OP.
Once OP is enabled, these custom objects are still kept in sync because the OP enablement process prepared them for OP.
However all new objects, seeded or custom, will have to abide by OATM model in order for OP to take them into consideration

As a result a customer who decided NOT to convert their old 11i or R12.0/R12.1 custom objects to the OATM model will end up having custom tablespaces they cannot remove since OP expects them to be there but all new application will be created in the OATM tablespaces. The database will then be a mix of non-OATM and OATM tablespaces which will NOT be able to be changed or aligned. Indeed the 12.2 Upgrade Guide warns customers that this upgrade is their last chance to abide by the OATM model
Once upgraded to 12.2 and OP has been enabled, all tablespaces must be kept AS IS in the database. Legacy custom tablespaces names cannot be modified any longer, and all new objects will go to OATM. Doing otherwise would break Online Patching

Refer to:
http://docs.oracle.com/cd/E26401_01/doc.122/e48834/T527285T527288.htm#6101841
Oracle E-Business Suite Upgrade Guide
Release 11i to 12.2
Part Number E48834-11
Release 12.2 Architecture
Tablespace Model
  This release uses the Oracle Applications Tablespace Model (OATM), which is based on database object type rather than product affiliation.
  OATM uses 12 locally managed tablespaces for all products, including the temporary tablespace, system tablespace, and system-managed undo (SMU) tablespace.
  Each database object is mapped to a tablespace based on its input/output characteristics, including object size, life span, access methods, and locking granularity.
  Oracle has successfully tested systems with extent sizes of 128 K for small systems (100 GB database) and 4-10 MB for large, multi-terabyte database systems.

http://docs.oracle.com/cd/E26401_01/doc.122/e22953.pdf
Oracle® E-Business Suite
Setup Guide
Release 12.2
Part No. E22953-16
June 2017
AD Splicer, pg 11-3
    Important: If you have custom applications in Release 12.2, you must run AD Splicer to ensure they are registered correctly
Tablespaces, pg 11-5
    Release 12.2. uses the Oracle Applications Tablespace Model (OATM), so you do not need to supply AD Splicer with parameters for identifying tablespaces
Chapter 14 Oracle Applications Tablespace Model, pg 14-6, Tablespace Types

Tablespace TypeTablespace Name

Content

Transactions TablesAPPS_TS_TX_DATATables that contain transactional data
Transactions IndexesAPPS_TX_TX_IDXIndexes on transactions tables
ReferenceAPPS_TS_SEEDReference and setup data and indexes
InterfaceAPPS_TS_INTERFACEInterface and temporary data and indexes.
SummaryAPPS_TS_SUMMARYSummary management objects, such as materialized views, fact tables, and other objects that record summary information
No LoggingAPPS_TS_NOLOGGINGMaterialized views not used for summary management and temporary objects
Advanced Queuing/AQAPPS_TS_QUEUESAdvanced Queuing and dependent tables and indexes
MediaAPPS_TS_MEDIAMultimedia objects such as text, video, sound, graphics and spatial data
ArchiveAPPS_TS_ARCHIVETables that contain archived purge-related data
UndoUNDO or other nameDatabase-related Automatic Undo Management (AUM) tablespace replacing ROLLBACKS when AUM is enabled
TemporaryTEMPDatabase-related temporary tablespace for global temporary tables, sorts and hash joins
SystemSYSTEMDatabase-related System tablespace for Oracle database catalog
System ToolsSYSAUXDatabase-related tablespace for DB tools such as CTXSYS Oracle Text indexed tables, Grid monitoring, etc.


 
 








 

 

 

 

 

 

 

 

As explained in:
http://docs.oracle.com/cd/E26401_01/doc.122/e48834/T527285T527288.htm#6101841
Oracle E-Business Suite Upgrade Guide
Release 11i to 12.2
Part Number E48834-11
  Oracle supplies scripts in the upgrade process to create the tablespaces *** for all new products and configure the database for the new tablespace model **** <<< this includes any new application that will use adsplice.   Then, the upgrade process creates the new objects in the OATM tablespaces.
  However, your existing objects are not automatically migrated.
  Oracle STRONGLY RECOMMENDS that you migrate the existing objects after running the related AD preparation scripts, as part of your preparation for the upgrade.
  Use the Tablespace Migration Utility (introduced in Release 11i) to perform this task.

Also the fact that adsplice will ignore the 2 entries main_tspace and index_tspace in newprods.txt has been confirmed by Development through
Bug 19716101 - 12.2.3 - ADSPLICE IS NOT USING THE TABLESPACE NAME PROVIDED IN NEWPRODS.TXT
@ Hence, the tablespace and index tablespace entries defined in newprods.txt are ignored as per the new design of OATM and the default tablespaces only are used.


CONSEQUENCES OF NOT HAVING CONVERTED TO OATM BEFORE UPGRADING TO 12.2.x
- Note that this utility is not supported for use after you enable Online Patching, so you cannot perform the migration after your environment is upgraded to Release 12.2.
  <<<< CRITICAL! The choice not to convert to OATM will mean legacy tablespaces are going to be expected to be mixed in with the new OATM model tablespaces which will now be used for any application created using adsplice
- If you choose not to migrate to OATM now, then you must continue to manage your old custom tablespaces separately.
  <<<< meaning all legacy tablespaces cannot change name as they are used by Online Patching. You can still add datafiles if the tablespaces objects grow but you cannot migrate the objects in any other tablespaces, INCLUDING the OATM ones.
  

In essence, these legacy tablespaces are there for the life of the system and cannot be made to disappear or re-organize independently and old custom objects MUST go on using these old tablespaces.
 

SOLUTION

A) Keep the Database with a mix of old tablespaces and new OATM model:
Use adsplice to create a new custom application and let it create the new application custom objects with the 12. 2 OATM tablespaces model.

Here is the adsplice newprods.txt example to follow for 12.2:
product=xxebs                                     <<< Note that the product_top name used to be 8 characters maximum but is now 16 chars max
base_product_top=*APPL_TOP*
oracle_schema=xxebs
sizing_factor=100
main_tspace=USER_DATA <<< this is going to be ignored but you should anyway set it properly APPS_TS_TX_DATA
index_tspace=USER_IDX   <<< same comment here but for APPS_TS_TX_IDX
temp_tspace=TEMP
default_tspace=USER_DATA <<< this should be APPS_TS_TX_DATA which is the default tablespaces that must be setup for the new user XXEBS
  <<< This is not ignored by adsplice and need to be aligned to the user created default tablespace which starting with 12.2 will always be APPS_TS_TX_DATA.

OR

B) Convert to OATM before upgrading to 12.2 so tablespaces are not confused between the old ones and the new mandatory 12.2 OATM model:
1. Convert to OATM as part of the downtime before the 12.2 upgrade.
2. Use adsplice and let it create the new application custom objects in the OATM tablespaces (refer to option A above).
 

REFERENCES

BUG:20646629 - ADSPLICE WILL IGNORE THE TABLESPACES INFO IN NEWPRODS.TXT - NOTE 1577707.1
BUG:19716101 - 12.2.3 - ADSPLICE IS NOT USING THE TABLESPACE NAME PROVIDED IN NEWPRODS.TXT
NOTE:1577707.1 - Creating a Custom Application in Oracle E-Business Suite Release 12.2

Oracle E-Business Suite Release 12.2 System Schema Migration

In This Document Section 1: Overview of the EBS System Schema Section 2: Requirements for Using the EBS System Schema Section 3: Migrating t...