Oracle Applications release 12.2 Online Patching architecture is mostly based on the Edition Based Redefinition database feature, which manages multiple editions that can hold a different version of a same object.
A few weeks ago we went over the Dependency between Non Editionable Objects and Editionable Objects and how Editions work on the database. Today our experts are delving into the Cross Edition triggers.
Crossing the boundaries of one edition and access data on another edition is solved by the so-called Cross Edition Triggers, which are special database triggers that can access data from a different edition.
Why are they necessary?
Imagine you have a custom table that stores your Customer Names on a single column, and a new product version upgrades that design to split the name into Customer_Last_Name and Customer_First_Name.
Your patch will install a new version of the code that will split the previous values from the single Customer_Name column to the current Last Name and First Name columns, which you will define as non-null allowed. But that script will only be run during the “Cutover” phase of your online patching cycle.
What about new values created from the running edition on the table you just modified to include the new columns? Somehow you need to provide a value to those columns or the insert operation will fail with a non-null allowed value error message.
Cross edition triggers allow you to fire an event from the running edition and impact data on the patching edition, thus splitting the complete customer name into the last name and first name columns.
We also have Reverse Cross Edition Triggers that fire from the patching edition and access data on the running edition.
For more on R12.2 topics check our other posts.