I’ve been debugging an issue within an APEX application and wanted to make sure that my local installation was at the same version as apex.oracle.com. So I logged on to my workspace and ran queries on APEX_RELEASE and APEX_PATCHES and discovered that there was a patch available for 20.1.
That patch is 30990551 and you can download it from the usual spot on My Oracle Support. None of the bugs listed in the “Fixed Bugs” helped me with my issue, because it turned out to be my own code . But here is what is fixed in the patch:
31232686 - WEBSHEET SAML AUTH: ERROR WHEN ALLOW PUBLIC ACCESS
31217638 - PAGE DESIGNER 'GROUP BY' RENDERING PREFERENCE REMOVAL FROM CODE
31243923 - REGRESSION: IG CSV EXPORTS DOES NOT ENQUOTE VALUES CONTAINING LF (CHR(10))
31237894 - INTERACTIVE REPORT AND INTERACTIVE GRID HIGHLIGHT DOESN'T SHOW HIGHLIGHT STYLING IN REPORT SETTINGS
31206093 - DARK MODE: SQL WORKSHOP QUERY BUILDER COLOUR CONSTRAST ISSUES
31174941 - UNREADABLE HOME SUB-MENUS WHEN CHANGING ZOOM ON CHROME
31253570 - MEGA MENUS HAVE INCORRECT RESPONSIVE BEHAVIOR
31256032 - INCORRECT COLORS RENDERED IN DARK MODE IN APEX BUILDER AND UT
31224836 - SESSION TIMEOUT WARNING INCORRECTLY DISPLAYS IN THE BUILDER
31286811 - SAML AUTH: ORA-01460 WHEN PARSING THE AUTHN REQUEST XML DOCUMENT
31281836 - INTERACTIVE GRID: DIALOG ERRORS WHEN PDF IS THE ONLY EXPORT FORMAT
Installation was quick and uneventful – just running a script and copying some fresh image directories. As always, read the installation instructions carefully to make sure you run the correct script for your environment.
SQL*Plus: Release 19.0.0.0.0 - Production on Wed May 13 10:45:45 2020
Version 19.6.0.0.0
Copyright (c) 1982, 2019, Oracle. All rights reserved.
Last Successful login time: Tue May 12 2020 18:17:47 +08:00
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.6.0.0.0
SQL> conn /@db19_pdb1 as sysdba
Connected.
SQL> @catpatch
. ORACLE
.
. Application Express (APEX) 20.1.0.00.13
. Patch Set Exception 30990551
........................................
APEX_VERSION
------------------------------
APEX_SCHEMA
--------------------------------------------------------------------------------------------------------------------------------
20.1.0.00.13
APEX_200100
PL/SQL procedure successfully completed.
Session altered.
APEX_SCHEMA
--------------------------------------------------------------------------------------------------------------------------------
APEX_200100
Session altered.
...wwv_flow_escape
Package body created.
No errors.
...wwv_flow_session
Package body created.
No errors.
...wwv_flow_authentication
Package body created.
No errors.
...wwv_flow_authentication_saml.plb
Package body created.
No errors.
PL/SQL procedure successfully completed.
...devpatch.sql
Session altered.
Grant succeeded.
Session altered.
...wwv_flow_authentication_f4900.plb
Package body created.
No errors.
...wwv_flow_property_dev
Package body created.
No errors.
...patch_31232686.sql
PL/SQL procedure successfully completed.
...patch_31217638.sql
PL/SQL procedure successfully completed.
Commit complete.
...Validating APEX
...(10:46:40) Starting validate_apex for APEX_200100
...(10:46:40) Checking missing sys privileges
...(10:46:40) Re-generating APEX_200100.wwv_flow_db_version
... wwv_flow_db_version is up to date
...(10:46:41) Checking invalid public synonyms
...(10:46:41) Key object existence check
...(10:46:41) Setting DBMS Registry for APEX to valid
...(10:46:41) Exiting validate_apex
PL/SQL procedure successfully completed.
...Recompiling invalid public synonyms
PL/SQL procedure successfully completed.
PL/SQL procedure successfully completed.
timing for: Complete Patch 30990551
Elapsed: 00:00:03.47
Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.6.0.0.0
So if you’re running APEX 20, be sure to patch your instance when you get a chance.
Hi Connor,
Thanks for blogging about our new APEX_PATCHES view, which we’ve introduced with 20.1, to make it easier for customers to verify whether a patch has been installed. Users can also inspect the Help > About dialog in their workspaces, and check for the following 2 new entries, which will only be visible on a patched instance:
Patch Version
Last Patch Time
Regards,
Hilary
Thanks for stopping by, and for the extra info!
Not so uneventful if you don’t have Java in database:
grant execute on “SYS”.”java/security/interfaces/RSAPublicKey” to APEX_200100
declare
*
ERROR at line 1:
ORA-04042: procedure, function, package, or package body does not exist
ORA-06512: at line 9
ORA-06512: at line 6
ORA-06512: at line 12
I just commented those two lines out from the script.
Yes, I did that too.
Thanks for that info – I’ll be sure to pass that on to the team
I applied this patch two weeks ago, looks like it was replaced with a newer version just yesterday, which has fixes for issues that I ran into, however it annoying that the patch number is the same, yet the contents differ.
Yeah I’ve seen some chatter about that – I will ask around internally.
Don’t forget there is also PATCH_VERSION in APEX_PATCHES
I downloaded it yesterday and it was still old version (18 May). Possibly my comments on the error on community forums or more probably Connor’s team notification caused this quick update.
I agree it’s not good to change the content of the same patch without notification.
I noticed the APEX 20.1 known issues page got updated too – previously it pointed out to 19.2 PSE bundle patch number and I had the right number from here.
How to know the patch was apllied or not?
SQL> select * from apex_patches;
ID PATCH_NUMBER PATCH_VERSION IS_ INSTALLED_ON
———- ———— —————————— — ——————-
9.0256E+37 30990551 2020.05.04 Yes 2020-05-13 10:46:41
Where do you get the patch if you utilize AWS services and licenses (i.e. not direct from oracle)? Without an Oracle Support account?
That would be a question for your AWS support person
Hi,
I will be installing Apex 21.1 into an Oracle 19c pluggable database. I’ve not used PDBs before.
It looks like you connected directly to the PDB to run @catpatch did you? The patch readme says
‘sqlplus “sys/ as sysdba” @catpatch.sql’ which I assume will connect to cdb$root. So, if I have apex 21.1 installed in a PDB do I connect to cdb$root or the pdb to run catpatch.sql?
Thanks
You always connect as SYS into the “database” you are installing APEX into. So for a pluggable, this means SYS *in the pluggable*.
It is very rare to install APEX in the root.
Hope that helps