Hi everyone, hope you’re doing well.

This blog post is to announce that AutoUpgrade-Composer has been updated to v.25.4-1.

Why?

Because Oracle just released AutoUpgrade v25.4

Oracle released a new updated for AutoUpgrade last week, version v25.4.

So, now it’s time to download the latest version of AutoUpgrade. You can download it from:

Please note that the direct download may still pointing to v25.3, the previous one. I always recommend downloading it from the MOS note.

As promised when I launched AutoUpgrade-Composer:

Every time Oracle releases a new AutoUpgrade version, I’ll update AutoUpgrade-Composer accordingly.

Below you can check the changelog for AutoUpgrade v25.4:

AutoUpgrade v25.4 changelog

build.version 25.4.250730
build.date 2025/07/30 16:33:06 +0000
build.hash d12ffb74e
build.hash_date 2025/07/24 14:59:09 +0000
build.supported_target_versions 12.2,18,19,21,23
build.type production
build.label (HEAD, tag: v25.4, origin/stable_devel, stable_devel)
build.MOS_NOTE 2485457.1
build.MOS_LINK https://support.oracle.com/epmos/faces/DocumentDisplay?id=2485457.1
65 bugs fixed since v25.3 release.
Tag: v25.4
Description: This is the release for 25.4 on MOS 19.29 and 23.10 (OCT2025RU)

New Features
None

New Checks
AUPG-3753
Add check PLUGIN_DISK_SPACE_FOR_RECOVERY_AREA and PLUGIN_MIN_RECOVERY_AREA_SIZE to check
disk space on the target CDB.
AUPG-4031
Add check REFRESH_CLONE_FORCE_LOGGING to warn DBA if FORCE LOGGING=NO and using refreshable clone PDBs
BUG-37080885
Add check DISCARD_PDB_SAVED_STATE CHECK Oracle recommends that databases managed by Oracle Grid
Infrastructure (GI) do not contain PDB saved states
BUG-37327943
Add check DV_CUSTOM_REALM_AND_COMMAND_RULE DBA to check if Database Vault is enabled and any
non-default realms or command rules are also enabled.
BUG-37288451
Add check FIX_TYPEIDS_BUG37169626 there are SQL Monitor objects with type IDs that need to be updated
to avoid ORA-30625.

Enhancements
AUPG-1205
Support individual system parameters per PDB
AUPG-4271
Automatically remove unknown parameters from the pfile
AUPG-4440
AutoUpgrade Patching – Add support for RAC databases
AUPG-4602
AutoUpgrade Patching – Create patch “folder” if missing
AUPG-4615
AutoUpgrade Patching – Allow “folder” parameter to be global and locally overridable
AUPG-4616
AutoUpgrade Patching – Allow “before_action” and “after_action” scripts during -mode create_home
AUPG-4635
Update the format of the postupgrade report
AUPG-4697
Warn DBA for configuration entries that are ignored parameters within the configuration file
AUPG-4730
AutoUpgrade Patching – Enable placeholders to dynamically create the target_home
AUPG-4732
Add thread ID to every logger message
AUPG-4748
AutoUpgrade Patching – Add option to specify custom Oracle Clusterware patch level (OCW:X.Y)
BUG-36702203
AutoUpgrade can now generate a configuration file automatically
BUG-37525186
Add support to copy Federal Information Processing Standards (FIPS files) to target home
BUG-37674026
Update AutoUpgrade report preupgrade.log (TEXT FORMAT) to include CHECKNAME, FIXUP, SEVERITY
and STAGE INFORMATION

Change in behavior
AUPG-2157
Enhance pfile generation on RAC when instances are down
AUPG-4696
AutoUpgrade Patching – Allow up to 2 folder levels to not exist
AUPG-4815
Update logging message when time zone upgrades are disabled
AUPG-4819
Rename checklist option from “_SKIP” to “SKIP” in [runfix] parameter for checklist
AUPG-4825
Clone a PDB from a Standby Database into a Data Guard Environment

Bugs
AUPG-1790
Network files copy and merge algorithms are now more robust
AUPG-3129
ClusterwareUtilsTest.getTempLocation failing when using csh shell
AUPG-3224
unplug-plug-relocate fails when SID and target_CDB is identical
AUPG-3832
Do not use DB_UNIQUE_NAME as PDB name for non-CDB to PDB conversion, Use ORACLE_SID minus the instance number
if present
AUPG-4010
RAC restore on OEL8 stuck repeating error messages still in progress
AUPG-4022
Incorrectly handling errors when loading TDE information
AUPG-4139
Incorrectly handling errors when wallet is not present on the system
AUPG-4372
Restoring a patch job leaves the database running on a PFILE instead of the SPFILE.
AUPG-4490
Auto-login is not detected correctly on the Windows platform
AUPG-4530
Check AP_DISK_SPACE_FOR_PATCHING will now check for spaced on target_home if present
AUPG-4589
Post Upgrade log not found when upgraded from 19c to 23ai
AUPG-4590
Missing files to update from autoupg_log_dir to global_log_dir
AUPG-4628
Trace warning message logged for pdbs plugging into remote systems
AUPG-4636
Clearer message identifying the issue of a mistyping SID when using load password
AUPG-4677
Improved EMCLI parameter validation
AUPG-4706
AutoUpgrade Patching – is not creating service after patching the database
AUPG-4709
On Windows platform check SC_CENTRAL_INVENTORY failed during a path check due to case sensitivity
AUPG-4713
AutoUpgrade Patching – Connecting to MOS fails if password contains “_” and/or “&”
AUPG-4764
AutoUpgrade Patching – Cannot download release updates when display language is set to Turkish
AUPG-4776
Enable patching of selected pdbs in AutoUpgrade
AUPG-4802
Black OEM agent messages is not writing to drain log
AUPG-4813
Throw a SQLException when InterruptedException is seen in class ExecuteSQL
AUPG-4827
Check SC_QI_CHECKS FAILS WITH ORA-01427
AUPG-4828
Windows credentials file is not deleted by default after patching a RAC database
AUPG-4860
Set PERL5LIB based on ORACLE_HOME
AUPG-4890
Update parameters26.properties
AUPG-4917
Starting the RAC needed improvements when using 23 Oracle Grid Infrastructure
BUG-36210341
AutoUpgrade is trying to continue when there is an error which causes problems later on like the
the SPFILE being blank. AutoUpgrade will now throw an exception letting DBA know that something went wrong.
BUG-37308434
Instance attempts to mount shared but instance 1 has already mounted exclusive
BUG-37390232
Check TARGET_PDB_COPY_OPTION is failing when validating ASM [+DATA] directory. Validation for ASM is
done using srvctl add a second validation by querying the database when srvctl does not return anything
BUG-37464555
Out of place patching with AutoUpgrade fails with checks LC_ALL and LC_CTYPE on POSIX systems that don’t
support grep -e option
BUG-37685774
RAC Database is not up after restoration to 21c from 23ai, the environment is set to target
when trying to start RAC after restore
BUG-37803932
Status JSON files shows wrong log directory
BUG-37851079
Add check for role AI_DEVELOPER_ROLE
BUG-37912305
Distributed AutoUpgrade patching for Containers on RAC database failed
BUG-37939152
Parameter tune_setting proactive_fixups is not case sensitive
BUG-37947542
AutoUpgrade file_name_convert clause doesn’t work specifying Exascale’s vault name due to parsing failure
BUG-37957944
AutoUpgrade fails to delete state file on windows
BUG-37977458
AutoUpgrade ignores target_pdb_copy_option in command-line mode due to parsing failure
BUG-38099145
AutoUpgrade ConcurrentModificationException error due to concurrent writes to an array list.
RTI-31400891
Unable to determine time zone version in target ORACLE_HOME

REST API
None

As you can see, there are a lot of changes. Mostly of them did not require updates in AutoUpgrade-Composer, but two of them did, and t hey are worth highlighting:

AUPG-4748 – AutoUpgrade Patching – Add option to specify custom Oracle Clusterware patch level (OCW:X.Y)

You can now customize the OCW patch level using the notation X.Y – the same we currently have for RU and OJVM.

Interesting isn’t it?

Before this change, if you try to use the OCW:X.Y notation, AutoUpgrade would result in an error:

“The patch parameter for prefix download1 includes a value that is not supported or is not in the required format”

Funny fact:

Last week, Joshua Brooks left a comment in another post whether this kind of customization was possible. You can read it here:

Joshua Brooks’ comment.

Let’s see how this change it will look in the tool.

First, access the tool:

https://viniciusdba.com.br/autoupgrade-composer

In the Patch Content tab, observe that OCW now has the textbox that allows the customization in the notation X.Y:

After you customize OCW, let’s see how Generated Config will be displayed:

Great! If you need to customize it, now you can do it and AutoUpgrade-Composer is updated to help you on it too!

AUPG-4440 – AutoUpgrade Patching – Add support for RAC databases

This is a GREAT enhancement!

How does this enhancement will work?

During AutoUpgrade Patching, AutoUpgrade will check whether your source home has the RAC binary option enabled. If it does, AutoUpgrade will install the target home also enabling it and it will install the target home in all cluster nodes where your source home is installed.

But, if you don’t want to install your target home in all cluster nodes?

You now have the parameter home_settings.cluster_nodes. With this parameter, you can overwrite the current list of the cluster_nodes.

Also, if you are installing a new DB Home in a server without an existing DB Home?

On this new DB Home you’ll need to set the binary option for RAC as enabled and specify the list of cluster nodes where you want to install your new DB Home.

Thinking on it, I’ve implemented on AutoUpgrade-Composer the following parameters:

  • The parameter to set the binary option for RAC – this is not new on AutoUpgrade, but is new on my tool, AutoUpgrade-Composer
  • A new parameter introduced on AutoUpgrade where you can customize and/or specify the cluster nodes.

Please note that as cluster_nodes is a parameter specific for AutoUpgrade Patching, you will see it only for the following modes under the “Additional Options” tab: Analyze, FixUps, Deploy and Create Home:

Let’s enable it both – for Cluster Nodes you can specify the list of nodes separated by comma (as exhibited in the screenshot):

The generated config will be display like the screenshot below:

References

You can read about binopt.rac parameter here:
https://docs.oracle.com/en/database/oracle/oracle-database/19/upgrd/patch-parameters-autoupgrade-config-file.html#UPGRD-GUID-01BD01F8-FDF4-4C78-8759-5D2B12E0CF32

You can read about home_settings.cluter_nodes here:
https://docs.oracle.com/en/database/oracle/oracle-database/19/upgrd/patch-parameters-autoupgrade-config-file.html#UPGRD-GUID-CA5AF358-D2E0-48FF-8261-667E95953AB1

Hope it helps!

Peace!

Vinicius

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.