This time the AutoUpgrade team did magic and included so many great new features and useful enhancements into the new version of AutoUpgrade. So, please note: The August 2025 version of AutoUpgrade (25.4) is available for download. You should refresh your current versions, especially when you use it for patching, and especially if you attempt to do in an RAC (Real Application Clusters) environment. But read more below.

Photo by Possessed Photography on Unsplash
How to download it?
As usual, that’s very simple. You either download it via the well-known
or you fetch it directly from oracle.com with curl, wget or by just clicking on the big button.
(25.4 will be available for direct download later tonight)
What’s new?
A lot. 25.3 was a one-fix-only release, the real change were in 25.2 before. But the new 25.4 release has a significant and important number of enhancements.
java -jar autoupgrade.jar -version 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
AutoUpgrade fixes and enhancements are always cumulative – and you need only one single version: Always the newest, it has everything in it – on all operating systems.
Since the below list may be a bit long to read through, let me highlight out the key improvements:
- AUPG-4825 – Clone a PDB from a Standby Database into a Data Guard Environment
- Now refreshable clones can point to standbys (no longer needed to open them in snapshot mode, all that is required is that the redo apply is stopped)
- AUPG-4713 – AutoUpgrade Patching – Connecting to MOS fails if password contains “_” and/or “&”
- Very important fix for many customers
- AUPG-4748 – AutoUpgrade Patching – Add option to specify custom Oracle Clusterware patch level (OCW:X.Y)
- Well, in case you’d like to customize it – but we recommend to use ALWAYS equal versions
- AUPG-4440 – AutoUpgrade Patching
- Add support for RAC databases
- This means: Now, “-create_home” mode to create a new Oracle home on a RAC cluster is available. It does NOT mean that AU can patch rolling.
Below, you find everything now in more detail.
New Features
None
- But well, this is not really correct since we support now patching and building of Oracle Database homes in RAC environments, too. Not Grid Infrastructure as a GI installation – even though we support updating and installing the OCW component in your database home for a while. But the RAC support is new in 25.4.
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 fixed
- 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
Further Links and Information
–Mike
Hi Mike,
I try to use create_home on windows with following parameter in my config file.
install1.home_settings.account_type=user
After starting autoupgrade i get the error:
“The home_settings.account_type parameter for prefix install1 includes a value that is not supported or is not in the required format”
I have local user svc_oracle created as documented on
https://dohdatabase.com/2025/06/17/autoupgrade-new-features-install-oracle-home-on-brand-new-empty-server/
I cannot figure out what goes wrong here.
What should be the value or format of the parameter?
Thanks, Erwin
Hi Erwin,
since you mail with Daniel already, I know that he is following up with development in parallel.
Cheers,
Mike
Daniek gave me the solution:
When using an exisiting local windows account (eg svc_oracle) you should use the syntax:
install1.home_settings.account_type=user:svc_oracle
The solution for a local user is:
install1.home_settings.account_type=user:
e.g.
install1.home_settings.account_type=user:svc_oracle
Thanks, I also created a SR
Hi Mike,
I used the version 25.4 on Windows, and one annoying bug is that autoupgrade forget to add permissions for the old local Windows group “_SVCACCTS” to the target OH\database directory: So when it tries to create the spfile there, it hits “access denied”.
2025-08-13 17:45:35.773 INFO [96] SQL*Plus data:CREATE SPFILE=’c:\oracle\product\19.28\database\spfileV193.ora’ FROM PFILE=’c:\oracle\autoupgrade\logs\V193\104\db_patching\V193\temp\after_upgrade_pfile_v193.ora’
*
ERROR at line 1:
ORA-27040: file create error, unable to create file
OSD-04002: unable to open file
O/S-Error: (OS 5) Access is denied.
(Old and new Oracle home uses virtual service accounts, and so this SQL command executed in the old instance/home failed to write the file to the new home.)
Another bug: In two subsequent tries on another server, where I first did “create_home”, then corrected the permissions on “database”, then did “deploy”, AutoUpgrade did not:
– drop the temporary Windows service OracleServiceAutoUpgrade
– delete the Windows service for the database instance pointing to the old OH
– create a Windows service for the database instance point to the new OH.
In this context, it is unclear what the config parameter “drop_win_src_service” is supposed to do: If set to “no” or “yes”, what is the expected outcome respectively, given that this mechanism does not work at all? (It was set to “yes”)
In the logfiles (specifically “\100\db_patching\\100\drain\drain_.log”), I cannot see actions for stopping and deleting the service OracleServiceAutoUpgrade, nor for creating the new service from the new OH afterwards.
On a somewhat different topic: This thing is slow as hell. I see “70 check tasks” are to be executed, but it takes full 15 minutes to do this (virus scanner disabled). There seems to be no parallel execution whatsoever in the Java program, so you can see one single sqlplus.exe being started by java.exe, taking forever to finish and only then, the next of this checks is executed, again by sqlplus.exe taking a long time. All the CPU cores are idle most of the time, so it is also unclear why the SQL scripts take so long to finish execution.
Could you please comment? Thanks
Thanks – let me share with the developer.
I hope Byron will get back to you directly.
Thanks
Mike
Mike,
On Windows doing analyze:
There were conditions found preventing AutoUpgrade Patching from successfully running
*Validating Utility Availability
The tar.exe utility is required for AutoUpgrade Patching. It is currently not found via the PATH environment. The following options are available: (1) Install the tar.exe utility (2) Add the tar.exe path to the PATH environment variable of the user executing AutoUpgrade Patching.
Copy %JAVA_HOME\bin\jar.exe to tar.exe will do the trick.
Maybe the programmers can look at it. You can use jar.exe to unzip patches. It works like a charm.
Regards,
Paulfrans
Hi Paul,
thanks a lot – and let me send this right away to the developers.
Cheers,
Mike
Found the issue….I was running on Windows 2016…which is not supported by Autoupgrade. From Windows version 2022 on there is a tar.exe in \Windows\System32. I would use %ORACLE_HOME%\java\bin\jar.exe anyway. I don’t know how tar.exe deals with long directory names.