FME Version
Information on the suitable Oracle Database JDBC drivers for FME Server when System Database is hosted on an Oracle Database. (Aug 2021)
Introduction
FME Server System Database can be hosted in PostgreSQL, SQL Server, & Oracle. FME Server ships the necessary JDBC Drivers for PostgreSQL & SQL Server, but not for Oracle. We provide information in our Admin Documentation on how to change the database provider here. We also mention a note on compatible Oracle Database JDBC Drivers:
If using an Oracle database server, you must obtain the Oracle Database JDBC driver. Driver versions recommended: 12.1 (ojdbc7.jar), 12.2 (ojdbc8.jar), 18.3 (ojdbc8.jar), 19.3 (ojdbc8.jar). Driver versions not recommended: 19.6, 19.7, all ojdbc10.jar versions. For more information, see Oracle's JDBC and UPC Downloads page.
This article intends to share some ad-hoc testing that has been performed by Safe Support but not officially part of our Quality Assurance Testing.
The following tests were performed using FME Server 2019.2 against an Oracle 18c Database.
The following Oracle Database JDBC Drivers PASSED:
- 12.1 - ojdbc7.jar
- 12.2 - ojdbc8.jar
- 18.3 - ojdbc8.jar
- 19.3 - ojdbc8.jar
- 19.6 - ojdbc8.jar
- 19.7 - ojdbc8.jar
The following Oracle Database JDBC Drivers FAILED:
- 19.3 - ojdbc10.jar
- 19.6 - ojdbc10.jar
- 19.7 - ojdbc10.jar
All FAILED drivers produce an error in the fmeProcessMonitorCore.log related to the unsupported use of an older JRE:
java.lang.UnsupportedClassVersionError: oracle/jdbc/driver/OracleDriver has been compiled by a more recent version of the Java Runtime (class file version 54.0), this version of the Java Runtime only recognizes class file versions up to 52.0
On Windows OS, errors are also passed to the Windows Event Viewer.
Summary
At this time it is required to make use of the ojdbc8.jar versioned JDBC drivers. These are using the JRE8 dependencies while the ojdbc10.jar utilizes JRE11 dependencies that are not supported by FME Server at this time. Development continues on upgrading to JRE11 but we do not have a committed timeline when JRE11 dependent drivers will be supported.
The ojdbc8.jar client driver is shown in the Oracle JDBC FAQ ("JDBC and RDBMS interoperability matrix") article as being suitable to connect to an Oracle Database of version 12.2 to 21.1 regardless of the client drivers (v12.2 to 21.1).
Resources
Visit Oracle JDBC FAQ and review the section Title "What is the JDBC and RDBMS interoperability matrix or the certification matrix?" & "What are the Oracle JDBC releases Vs JDK versions?"
Oracle Database JDBC Driver Downloads
Changing the Database Provider for the FME Server Database
Comments
0 comments
Please sign in to leave a comment.