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

No comments:

Post a Comment

Database Options/Management Packs Usage Reporting for Oracle Databases 11.2 and later (Doc ID 1317265.1)

  Database Options/Management Packs Usage Report You can determine whether an option is currently in use in a database by running options_pa...