Overall Performance Improvements
ORDS_SECURITY
and ORDS_SECURITY_ADMIN
.OAUTH
and OAUTH_ADMIN
PL/SQL Packages. Customers must plan for this move as they will no longer be available in ORDS 25.3 (October 2025).Are you interested in learning how to use your Oracle Database in a React (Remix)--based app using ORDS REST APIs?
Test out our new sample application with the following npm (command will scaffold a complete project):
npm create @oracle/database-app -- "ords-sample-app" --template ords-remix-jwt-sample
ORDS Core
SQL Developer Web
Library Updates
Oracle REST Data Services requires Java 11, 17, or 21. The supported Java Runtime Environments are:
Note that GraphQL support requires GraalVM Enterprise Edition for Java 17 or later.
Please consult the documentation for the minimum supported Application Server versions for ORDS.
If you are running a customer-managed ORDS for your Autonomous Transaction Processing, Autonomous Data Warehouse, or Autonomous JSON Database, you must upgrade your customer-managed ORDS to the version used in your Autonomous Database Shared environment. Failure to do so could lead to service disruptions.
To determine the version of ORDS in your Autonomous Database Shared database run this query:
select ords.installed_version from dual;
In a number of cases, ORDS executes queries which include a CURSOR expression. An issue has been found executing these queries for some schemas in Oracle 18c and Oracle 19c databases. Depending on the roles and privileges involved, the issue does not occur for all schemas, which can give the impression that the issue is intermittent. Refer to RDBMS bug 29049673 for more information. The issue is manifest as follows in the exception returned:
ORA-00604: error occurred at recursive SQL level 1 ORA-01031: insufficient privileges
This is a problem with view-merging of nested cursors introduced in Oracle 18.1 database. Please use the following as a workaround:
alter system set "_fix_control"='20648883:OFF';Oracle Database DATE and TIMESTAMP values
ORDS interprets Oracle Database DATE and TIMESTAMP values (which do not possess a time zone) into the time zone of ORDS. These values are then represented in the RFC3339 UTC format.
In a future release Oracle Database DATE and TIMESTAMP values will not by default be interpreted into any time zone. These values will be represented in the ISO 8601 "yyyy-mm-ddThh:mm:ss[.sss]" format. Oracle Database TIMESTAMP WITH TIME ZONE and TIMESTAMP WITH LOCAL TIME ZONE values will remain represented in the RFC3339 UTC format.
SQL Developer WebORDS passes array values to the Oracle Database in a number of cases, for example arrays are used to pass the request headers and form fields during PL/SQL Gateway calls. Oracle JDBC Driver 18.3 and later supports an improved mechanism for passing array values, however this feature is only supported on Oracle Database 12c and later. Thus ORDS uses existing deprecated and less efficient APIs for passing array values when connecting to 11G databases, and the improved mechanism when connected to 12c and later. Customers experiencing problems with passing large array sets (for example OutOfMemory exceptions) are encouraged to upgrade from 11G to a newer database version to mitigate these issues.
Autogenerated REST Endpoints/sign-in/
interactive sign in form. Accessing
/sign-in/
in APEX workspaces will produce a 404 status.
Revised Command Line Interface and Configuration Directory Structure
Command Line Interface
The java commands serviced from the WAR file are no longer supported. Attempting to run the following:java -jar ords.war standaloneWill result in an error message, referring you to the docs. Instead you would run:
ords --config /path/to/config serveInstallation & Configuration
The ORDS program or script in the bin directory can be used to perform installs, changes to your configuration, changing the database passwords for your connection pools, and for creating ORDS users. To see a list of commands:
ords --helpConfiguration Files Directory Layout
If upgrading from a previous version of ORDS, your existing configuration directory for ORDS and the files contained therein will be migrated to a new layout for versions 22.1 and higher.
You may migrate your settings using the ORDS migrate command, or you may perform a 22.1 install which will prompt ORDS to migrate your existing ORDS configuration to the new mapping for you.
ORDS standalone and default pool configuration settings are in a settings.xml file in a global subdirectory.
Connection pools are in a databases subdirectory. The intital database pool is named 'default' and has a '/' mapping pattern.
Subsequent pools will created such that the name of the pool also defines the mapping pattern.
SQL Developer Web (SDW) is an ORDS hosted web application giving Oracle Database users the SQL Developer desktop experience in their browser.
SQL Developer Web provides a development interface for building and maintaining your ORDS based REST APIs, AUTOREST Enabled database objects, OAuth3 Clients, ORDS Privileges and Roles, as well as a SODA for REST graphical interface. For the best possible experience developer REST APIs for ORDS, we recommend you use SQL Developer Web.
For consistent representation of date values in SQL Developer Web, ORDS should be run in the UTC timezone. This is set automatically when using the ords command line interface. When deploying ORDS to Apache Tomcat or WebLogic Server the user.timezone may have to be set explicitly before starting the container.
-Duser.timezone=UTCSQL Developer Web requires the Database API be enabled.
SQL Developer Web's DBMS_SCHEDULER interface requires database version 12.2 or higher.
Upgrading ORDS in the databaseIf you have previously executed script, ords_installer_privileges.sql, to grant your administrator user privileges to perform the install or upgrade, then you must execute the script again on that same user that you provided because additional grants have been added to this script. Note: This script does not apply to the SYS user account.