In Oracle Database 19c, I can't create ORDSYS.SI_StillImage() (tried on many images loaded with previous database version). Same code works in Oracle 12c.
I tried this on 2 separate instalations of Oracle 19c with the same error.
Here is test example:
u@db19> SELECT BANNER_FULL FROM v$version;
BANNER_FULL
----------------------------------------------------------------------------------------------------
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.8.0.0.0
u@db19> DECLARE
2 l_raw raw(32767);
3 l_stillImage ORDSYS.SI_StillImage;
4 BEGIN
5 l_raw := 'FFD8FFE000104A46494600010101004800480000FFDB00430006040506050406060506070706080A100A0A09090A140E0F0C1017141818171416161A1D251F1A1B231C1616202C20232627292A29191F2D302D283025282928FFDB0043010707070A080A130A0A13281A161A2828282828282828282828282828282828282828282828282828282828282828282828282828282828282828282828282828FFC00011080014001403012200021101031101FFC4001800010101010100000000000000000000000007080305FFC4002C10000103030203060700000000000000000102030400051112130607311421224151B1153233617191F0FFC400160101010100000000000000000000000000040305FFC4001C1100030100020300000000000000000000000102031113313261FFDA000C03010002110311003F00AEF34EE721FB83764624BF1D9D80FBDB0A29539A8A825248EFD3E139F5A8DE8BBF062FE2D63B83E24B4ADD533A8ED3C9CF890A4F4208F3EA3A8AAD73BEDA8DB8971712F14287673B2AD2750CA939FB7CD52792B8EF34E3AA43A429AD214A57418C778F5A054D7655335F251582492FA6A6B6CB6E7DBA2CC67E948692F23F0A008F7A578BC0778B5DDB85E12EC8F39221C7426285A995B67520049185007BBF54A7992FC9C799E80BE02BC838076320E904A4E4608C82323D6A1DCB1B5B3C5B7B306ECB77B33414AD2C908D783E671ED8A52A37EC84E0DACEB8348DBA0C6B6C2661C1650C46693A50DA06001FDE74A52AC14FFFD9';
6 l_stillImage := NEW SI_StillImage(to_blob(l_raw));
7 --
8 dbms_output.put_line('height: '||l_stillImage.height_SI);
9 dbms_output.put_line('width: '||l_stillImage.width_SI);
10 dbms_output.put_line('format: '||l_stillImage.format_SI);
11 dbms_output.put_line('mime: '||l_stillImage.mimeType_ora);
12 END;
13 /
DECLARE
*
ERROR at line 1:
ORA-06510: PL/SQL: unhandled user-defined exception
ORA-06512: at "ORDSYS.SI_STILLIMAGE", line 14
ORA-06512: at line 6
su@db12> SELECT * FROM v$version;
BANNER CON_ID
-------------------------------------------------------------------------------- ---------------
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production 0
PL/SQL Release 12.1.0.2.0 - Production 0
CORE 12.1.0.2.0 Production 0
TNS for Linux: Version 12.1.0.2.0 - Production 0
NLSRTL Version 12.1.0.2.0 - Production 0
su@db12> DECLARE
2 l_raw raw(32767);
3 l_stillImage ORDSYS.SI_StillImage;
4 BEGIN
5 l_raw := 'FFD8FFE000104A46494600010101004800480000FFDB00430006040506050406060506070706080A100A0A09090A140E0F0C1017141818171416161A1D251F1A1B231C1616202C20232627292A29191F2D302D283025282928FFDB0043010707070A080A130A0A13281A161A2828282828282828282828282828282828282828282828282828282828282828282828282828282828282828282828282828FFC00011080014001403012200021101031101FFC4001800010101010100000000000000000000000007080305FFC4002C10000103030203060700000000000000000102030400051112130607311421224151B1153233617191F0FFC400160101010100000000000000000000000000040305FFC4001C1100030100020300000000000000000000000102031113313261FFDA000C03010002110311003F00AEF34EE721FB83764624BF1D9D80FBDB0A29539A8A825248EFD3E139F5A8DE8BBF062FE2D63B83E24B4ADD533A8ED3C9CF890A4F4208F3EA3A8AAD73BEDA8DB8971712F14287673B2AD2750CA939FB7CD52792B8EF34E3AA43A429AD214A57418C778F5A054D7655335F251582492FA6A6B6CB6E7DBA2CC67E948692F23F0A008F7A578BC0778B5DDB85E12EC8F39221C7426285A995B67520049185007BBF54A7992FC9C799E80BE02BC838076320E904A4E4608C82323D6A1DCB1B5B3C5B7B306ECB77B33414AD2C908D783E671ED8A52A37EC84E0DACEB8348DBA0C6B6C2661C1650C46693A50DA06001FDE74A52AC14FFFD9';
6 l_stillImage := NEW SI_StillImage(to_blob(l_raw));
7 --
8 dbms_output.put_line('height: '||l_stillImage.height_SI);
9 dbms_output.put_line('width: '||l_stillImage.width_SI);
10 dbms_output.put_line('format: '||l_stillImage.format_SI);
11 dbms_output.put_line('mime: '||l_stillImage.mimeType_ora);
12 END;
13 /
height: 20
width: 20
format: JFIF
mime: image/jpeg
PL/SQL procedure successfully completed.
The ORDSYS package is part of 'Oracle Multimedia' and one of the changes in 19c is that the Oracle Multimedia is no longer functional (see https://docs.oracle.com/en/database/oracle/oracle-database/19/upgrd/behavior-changes-deprecated-desupport-oracle-database.html#GUID-BABC1C60-EA07-4EBE-8C67-B69B59E4F742)
So as per the advice on the above link (and copied locally below) you will need to move your images to a LOB (CLOB, BLOB, SecureFile LOB) and use another method for processing them.
Below is a quote from the page above
Oracle Multimedia will be removed in Oracle Database 19c When you upgrade or migrate your database to Oracle 19c, then Oracle Multimedia APIs will be still exist but won’t function anymore.
Desupport of Oracle Multemedia
Oracle Multimedia is desupported in Oracle Database 19c, and the implementation is removed.
As an alternative for image processing and conversion, Oracle recommends that you store multimedia content in SecureFiles LOBs, and use third party products, such as Piction. The ORDIM component remains in the registry and still has a VALID status. Oracle Multimedia objects and packages remain in the database. However, these objects and packages no longer function, and raise exceptions if there is an attempt made to use them. Oracle Locator is not affected by the desupport of Oracle Multimedia.