Oracle E-Business Suite R12.2 is now certified against RDBMS 23ai for Exadata On-Prem

For those of you who are set up to receive notifications when various MOS Notes are updated, you probably noticed a bit of activity in the last day or so. In particular, I saw MOS 1617461.1 (Applying the Latest AD and TXK Release Update Packs to Oracle E-Business Suite Release 12.2) was updated…. that took me to MOS 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) where I saw the statement:

“Note: The minimum certified version of Oracle Database 23ai for Oracle E-Business Suite is Oracle Database 23ai (23.5.0.24.07). “

At that point, I became extremely excited. Wait, it’s certified now? Wow!
So, I went to check out the EBS TechStack blog, where I saw the actual announcement:


https://blogs.oracle.com/ebstech/post/ebs-122-now-certified-with-database-23ai-onpremises-exadata

But, here’s my problem.

I don’t have an Exadata in my basement. And RDBMS 23ai has still not been released for on-prem deployments. So, obviously, I can’t do much with it as of yet.

Here’s what I can do.

The announcement, even though it’s just for Exadata, brings with it a bunch of updated MOS notes. These MOS notes can provide us a preview of what we’ll have to do when it is, eventually, certified for on-prem deployments to other platforms.

In particular, take a look at:

Information Center: Oracle Database 23ai with Oracle E-Business Suite 12.2 (Doc ID 3018618.2)
Interoperability Notes: Oracle E-Business Suite Release 12.2 with Oracle Database 23ai (Doc ID 2962871.1)

So, if you’re planning to upgrade your EBS R12.2 environment to use 23ai, take a look at those MOS notes. They will provide a basic roadmap to help you get ready. Some of the key items that you can do NOW in order to get ready:

  • Upgrade to RDBMS 19c if you’re not there already! [MOS 265589.2 is a good starting point]
  • Apply R12.AD.C.Delta.16 and R12.TXK.C.Delta.16 [MOS 1617461.1]
  • Implement Case-Insensitive PDB Names [MOS 2782130.1]
  • Migrate to the EBS_SYSTEM schema [MOS 2755875.1]
  • Enable Unified Auditing [MOS 2777404.1]

Additionally, review the patches mentioned in the EBS R12.2/23ai Interoperability notes [MOS 2962871.1]. I wouldn’t worry about applying any of the actual 23ai Interoperability patchs quite yet (it’s quite possible that patch could change or be replaced when the regular certification is announced). But, MOS 2962871.1 will still give you a good idea of where you need to be with other “normal” patches.

AS ALWAYS, when applying patches, be sure to test things in a non-production enviromnent before moving them into production.

And enjoy going down the EBS MOS Note rabbit hole… 🙂

NEW EBS Update Checker

ETCC

EBS Customers are, by now, familiar with the “EBS Technology Codelevel Checker (ETCC)”. This tool, updated at least every quarter, can scan your EBS system and identify the necessary patches on top of your current PSU. The ETCC tool works on both the dbTier and the EBS appsTier. The output of the ETCC tool will also recommend a single patch bundle that you can download which will contain all of the necessary patches.

As always, you should download the current version of the tool as Patch 17537119. Rather than issuing a new patch with each update, here, they’re merely updating the same patch number, so always download the current one!

What’s new is that they’ve now produced a tool that does the same thing for the various Java installations in your EBS environment.

This new tool is the EBS Java Critical Patch Update Checker (EJCPUC)

Released along with the October 2024 CPU (and, I presume every quarter), the patch for this one is 37171025.

In order to use it, here’s what I do:

Extract the zip file:

mkdir EJCPUC
cd EJCPUC
unzip ${DL}/p37171025_R12_GENERIC.zip
chmod 750 *.sh

Set your environment and run the script:

./ejcpuc.sh

Here is a sample of the output from the appsTier of my lab environment:

##################################################################################
## Checking Apptier Java 7 for CPU 2024.10 on Platform Linux_x64 - need 1.7.0_441
## 2024-11-01 13:25:26 CDT  on  ebsap1
##################################################################################
 2024.10        action  Your Version    bitness Java Location
 ------------   ------  ------------    ------- ---------------
 1.7.0_441      UPDATE  1.7.0_351       32-bit  /oracle/EBSDBA/fs1/EBSapps/10.1.2/jdk/bin/java
 1.7.0_441      UPDATE  1.7.0_351       32-bit  /oracle/EBSDBA/fs1/EBSapps/comn/util/jdk32/bin/java
 1.7.0_441      UPDATE  1.7.0_351       64-bit  /oracle/EBSDBA/fs1/EBSapps/comn/util/jdk64/bin/java
 1.7.0_441      UPDATE  1.7.0_351       64-bit  /oracle/EBSDBA/fs1/FMW_Home/webtier/jdk/bin/java

Follow 1530033.1 to update the JDK(s). Your application tier JDK 7 is lower than the 1.7.0_441 update released in CPU 2024.10.

Here is a sample of the output from the dbTier:

##################################################################################
## Checking DB tier Java for CPU 2024.10 on Platform Linux_x64
## 2024-11-04 08:34:21 CST  on  ebsdb1
##################################################################################

## Check Database Version
##################################################################################
Your database version is 19.23.0.0.0
         ORACLE_HOME     /oracle/EBSDBA/19.3.0
         ORACLE_SID      CDBDBA
         ORACLE_UNQNAME  CDBDBA

## Check Java Version of OJVM, Database JDK and EBS's appsutil JRE, need 1.8.0_421
##################################################################################
 Latest Version  action  Your Version  bitness Java Location
 -------------- -------- ------------  ------- ---------------
 1.8.0_431         o)    1.8.0_411      64-bit OJVM In database
 1.8.0_421         j)    1.8.0_401      64-bit /oracle/EBSDBA/19.3.0/jdk/bin/java
 1.8.0_421         u)    1.8.0_401      64-bit /oracle/EBSDBA/19.3.0/appsutil/jre/bin/java

o) Apply the Database Release Update (DBRU) recommended by ETCC which will update the DB OJVM version to the latest
j) Apply the Database Release Update (DBRU) recommended by ETCC which will update the DB JDK version to the latest
u) When the DB JDK version is updated to the latest - then follow section 3 of 1530033.1 to update this JRE

Updating the Context File in E-Business Suite From the Linux Command Line

Updating the E-Business Suite context file, particularly on the appsTier, is a fairly common exercise for an E-Business Suite DBA. You might need to do it as part of cloning, or just implementing things like Java Web Start and SSL/TLS.

One challenge, however, is that the context file is somewhat fragile. Make the wrong typo, and you could spend a decent amount of time trying to fix things.

The typical method for updating the context file is to simply open it up in your favorite editor (that would be vi on most Unix/Linux systems) and make the changes directly.

The recommended method, is to login to EBS and use Oracle Applications Manager to make the change. Unfortunately, this assumes that you want to (or can) start the applications to make the change

But what I told you that I found a better way to do it?

So, here’s the story.

A couple of years ago, I was setting up an Oracle VISION Demo Virtual Machine. For those who might not know, Oracle has pre-built Virtual Appliances with the E-Business Suite VISION Demo that you can download and run in a VirtualBox VM. (The instructions for The R12.2.12 can be found in MOS 2933812.1).

When you boot up that virtual machine and login for the first time, you’re prompted to answer various questions that are fed into a script which completely reconfigures the system.

When I first saw that I though, oh, this is neat… I wonder how they’re doing this? Turns out, it’s largely a collection of Linux shell scripts and perl scripts. So I started digging further. What I found was that they were using a java routine to edit the context file.

Based on that, I’ve developed this script to do those edits.

It’s important to note that this script is simply a “wrapper” that calls a standard tool that is already included in the Oracle E-Business Suite installation.

In order to run the script, use the syntax:

./update_ctx.sh ${CONTEXT_FILE} token "value"

For example, let’s say you want to update the value for the s_display token:

./update_ctx.sh ${CONTEXT_FILE} s_display localhost:0.0

The script will make a backup of the context file, perform the update, and show you a “diff” between the two. It is written to run on the appsTier (which is where we tend to be making edits). The script supports R12.1.3 and R12.2.

#!/bin/bash
#
#   Update Context File for EBS R12.1 or R12.2
#
#	James J. Morrow
#	BlueStone Solutions Group, Inc.
#	
#	01-Nov-2023	JJM	Updated to include R12.1 Syntax
#

export DTTM=`date +%Y%m%d-%H%M`
export CTXFILE=${1}
cp ${CTXFILE} ${CTXFILE}.${DTTM}

#
#	Determine EBS Version from Environment
#

if [ "${FILE_EDITION}x" == "x" ]; then
	echo -e "\nUsing syntax for EBS R12.1\n"
	export VER="R12.1"
else
	echo -e "\nUsing syntax for EBS R12.2\n"
	export VER="R12.2"
fi

update_ctx()
{
	#
	#	From EBS VISION VM, /u01/install/scripts/configwebentry.sh
	#
	if [ ${VER} == "R12.2" ]; then
		#
		#	EBS R12.2.x syntax
		#
        	echo -e "INFO:  Setting ${TOKEN} to ${VALUE}"
        	${COMMON_TOP}/util/jdk32/jre/bin/java \
        	-classpath ${COMMON_TOP}/java/classes:${EBS_ORACLE_HOME}/shared-libs/ebs-appsborg/WEB-INF/lib/ebsAppsborgManifest.jar  \
        	oracle.apps.ad.context.UpdateContext ${CTXFILE} ${TOKEN} "${VALUE}"
	elif [ ${VER} == "R12.1" ]; then
		#
		#	EBS R12.1.x Syntax
		#
        	echo -e "INFO:  Setting ${TOKEN} to ${VALUE}"
        	${COMMON_TOP}/util/jdk/jre/bin/java \
		-classpath ${COMMON_TOP}/java/classes:${COMMON_TOP}/java/lib/appsborg2.zip \
        	oracle.apps.ad.context.UpdateContext ${CTXFILE} ${TOKEN} "${VALUE}"
	fi
}

echo -e "\nUpdating CONTEXT_FILE\n"

export TOKEN=${2}
export VALUE="${3}"
update_ctx

#
#	Show before/after
#

echo -e "\nDifference between ORIGINAL and UPDATED context files\n"

diff ${CTXFILE}.${DTTM} ${CTXFILE}

echo -e "\nOriginal context file backed up as ${CTXFILE}.${DTTM}\n"

The script, as written, will only update a single token. If, for example, you’re working on an upgrade or a clone and need to update several, you could modify the script to do so. Just replace this section with a series of TOKEN/VALUE settings and call the “update_ctx” routine for each.

export TOKEN=${2}
export VALUE="${3}"
update_ctx

For example, maybe you need to update all of your Workflow Mailer settings. Replace the section above with values like what we have below.

export TOKEN=s_javamailer_imaphost
export VALUE=outlook
update_ctx

export TOKEN=s_javamailer_imapdomainname
export VALUE=office365.us
update_ctx

export TOKEN=s_javamailer_reply_to
export VALUE=wf${SMSID}@mydomain.com
update_ctx

export TOKEN=s_javamailer_imap_user
export VALUE=swf${SMSID}@mydomain.com
update_ctx

export TOKEN=s_smtphost
export VALUE=smtp
update_ctx

export TOKEN=s_smtpdomainname
export VALUE=mydomain.com
update_ctx

Oracle E-Business Suite R12.2.14 Released

Approximately once a year, typically in the fall, frequently at or near the time of a convention, Oracle announces the new releases for E-Business Suite.

Today is one of those days.

The actual announcement is available to the public here

For those with access to My Oracle Support, you can get more information through MOS 3012829.1. That document includes a link to the R12.2.14 RUP Patch [36026788] as well as a release notes for the patch itself and each of the included modules.

Oracle CloudWorld is happening right now in Las Vegas, NV. Tomorrow, at 9AM (Pacific), Larry will give his keynote address. Hopefully, he will announce the general availability of 23ai for on-premises systems. If that happens, I would look for an announcement from the Applications Technology Group about certification to follow shortly thereafter. For those of you paying attention to the ATG Blog, Elke Phelps posted a seven-part series to “tease” the upcoming certification.

Fingers crossed…